diff options
author | Tor Egge <tegge@vespa.ai> | 2024-03-11 14:26:20 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-11 14:26:20 +0100 |
commit | 3c815a8d47b21ac1be7a6d58535045d2421c110c (patch) | |
tree | 9208dd0a2a4200c7185e3f9fff9ad4009b10deed /messagebus | |
parent | 8110c6d8a31620119ab0d255a1ecdfaa7daa06b7 (diff) | |
parent | 0520e5bb63008b3a61e9685c6ac34a6d5a9096d9 (diff) |
Merge pull request #30560 from vespa-engine/toregge/rewrite-messagebus-advanced-routing-unit-test-to-gtest
Rewrite messagebus advanced routing unit test to gtest.
Diffstat (limited to 'messagebus')
-rw-r--r-- | messagebus/src/tests/advancedrouting/CMakeLists.txt | 1 | ||||
-rw-r--r-- | messagebus/src/tests/advancedrouting/advancedrouting.cpp | 76 |
2 files changed, 31 insertions, 46 deletions
diff --git a/messagebus/src/tests/advancedrouting/CMakeLists.txt b/messagebus/src/tests/advancedrouting/CMakeLists.txt index dc4013b833f..ca2d3e4bba0 100644 --- a/messagebus/src/tests/advancedrouting/CMakeLists.txt +++ b/messagebus/src/tests/advancedrouting/CMakeLists.txt @@ -5,5 +5,6 @@ vespa_add_executable(messagebus_advancedrouting_test_app TEST DEPENDS messagebus_messagebus-test messagebus + GTest::gtest ) vespa_add_test(NAME messagebus_advancedrouting_test_app COMMAND messagebus_advancedrouting_test_app) diff --git a/messagebus/src/tests/advancedrouting/advancedrouting.cpp b/messagebus/src/tests/advancedrouting/advancedrouting.cpp index ce4a13d435a..4415674986e 100644 --- a/messagebus/src/tests/advancedrouting/advancedrouting.cpp +++ b/messagebus/src/tests/advancedrouting/advancedrouting.cpp @@ -5,14 +5,16 @@ #include <vespa/messagebus/testlib/simplemessage.h> #include <vespa/messagebus/testlib/slobrok.h> #include <vespa/messagebus/testlib/testserver.h> -#include <vespa/vespalib/testkit/testapp.h> #include <vespa/vespalib/util/stringfmt.h> #include <vespa/messagebus/emptyreply.h> #include <vespa/messagebus/errorcode.h> #include <vespa/messagebus/routing/retrytransienterrorspolicy.h> +#include <vespa/vespalib/gtest/gtest.h> using namespace mbus; +namespace { + class TestData { public: Slobrok _slobrok; @@ -34,38 +36,27 @@ public: bool start(); }; -class Test : public vespalib::TestApp { -private: - Message::UP createMessage(const string &msg); - bool testTrace(const std::vector<string> &expected, const Trace &trace); - -public: - int Main() override; - void testAdvanced(TestData &data); -}; - -TEST_APPHOOK(Test); - -TestData::~TestData() = default; -TestData::TestData() : - _slobrok(), - _retryPolicy(std::make_shared<RetryTransientErrorsPolicy>()), - _srcServer(MessageBusParams().setRetryPolicy(_retryPolicy).addProtocol(std::make_shared<SimpleProtocol>()), - RPCNetworkParams(_slobrok.config())), - _srcSession(), - _srcHandler(), - _dstServer(MessageBusParams().addProtocol(std::make_shared<SimpleProtocol>()), - RPCNetworkParams(_slobrok.config()).setIdentity(Identity("dst"))), - _fooSession(), - _fooHandler(), - _barSession(), - _barHandler(), - _bazSession(), - _bazHandler() +TestData::TestData() + : _slobrok(), + _retryPolicy(std::make_shared<RetryTransientErrorsPolicy>()), + _srcServer(MessageBusParams().setRetryPolicy(_retryPolicy).addProtocol(std::make_shared<SimpleProtocol>()), + RPCNetworkParams(_slobrok.config())), + _srcSession(), + _srcHandler(), + _dstServer(MessageBusParams().addProtocol(std::make_shared<SimpleProtocol>()), + RPCNetworkParams(_slobrok.config()).setIdentity(Identity("dst"))), + _fooSession(), + _fooHandler(), + _barSession(), + _barHandler(), + _bazSession(), + _bazHandler() { _retryPolicy->setBaseDelay(0); } +TestData::~TestData() = default; + bool TestData::start() { @@ -91,30 +82,21 @@ TestData::start() return true; } -Message::UP -Test::createMessage(const string &msg) +std::unique_ptr<Message> +createMessage(const string &msg) { auto ret = std::make_unique<SimpleMessage>(msg); ret->getTrace().setLevel(9); return ret; } -int -Test::Main() -{ - TEST_INIT("routing_test"); +} +TEST(AdvancedRoutingTest, test_advanced) +{ TestData data; ASSERT_TRUE(data.start()); - testAdvanced(data); TEST_FLUSH(); - - TEST_DONE(); -} - -void -Test::testAdvanced(TestData &data) -{ const duration TIMEOUT = 60s; IProtocol::SP protocol(new SimpleProtocol()); auto &simple = dynamic_cast<SimpleProtocol&>(*protocol); @@ -174,7 +156,9 @@ Test::testAdvanced(TestData &data) reply = data._srcHandler.getReply(); ASSERT_TRUE(reply); printf("%s", reply->getTrace().toString().c_str()); - EXPECT_EQUAL(2u, reply->getNumErrors()); - EXPECT_EQUAL((uint32_t)ErrorCode::FATAL_ERROR, reply->getError(0).getCode()); - EXPECT_EQUAL((uint32_t)ErrorCode::NO_ADDRESS_FOR_SERVICE, reply->getError(1).getCode()); + EXPECT_EQ(2u, reply->getNumErrors()); + EXPECT_EQ((uint32_t)ErrorCode::FATAL_ERROR, reply->getError(0).getCode()); + EXPECT_EQ((uint32_t)ErrorCode::NO_ADDRESS_FOR_SERVICE, reply->getError(1).getCode()); } + +GTEST_MAIN_RUN_ALL_TESTS() |