load("@rules_cc//cc:defs.bzl", "cc_test")

cc_test(
    name = "query_route_request_header_test",
    srcs = [
        "QueryRouteRequestHeaderTest.cpp",
    ],
    deps = [
        "//src/main/cpp/remoting",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "remoting_command_test",
    srcs = [
        "RemotingCommandTest.cpp",
    ],
    deps = [
        "//src/main/cpp/remoting",
        "@com_google_googletest//:gtest_main",
    ],
)

cc_test(
    name = "broker_data_test",
    srcs = [
        "BrokerDataTest.cpp",
    ],
    deps = [
        "//src/main/cpp/remoting",
        "@com_google_googletest//:gtest_main",
    ]
)


cc_test(
    name = "queue_data_test",
    srcs = [
        "QueueDataTest.cpp",
    ],
    deps = [
        "//src/main/cpp/remoting",
        "@com_google_googletest//:gtest_main",
    ]
)

cc_test(
    name = "topic_route_data_test",
    srcs = [
        "TopicRouteDataTest.cpp",
    ],
    deps = [
        "//src/main/cpp/remoting",
        "@com_google_googletest//:gtest_main",
    ]
)