summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2024-03-09 17:22:12 +0100
committerTor Egge <Tor.Egge@online.no>2024-03-09 17:22:12 +0100
commit2a78e6d90fa7fd076fe19717500e4c3a3b37f38b (patch)
treec51ee4426e29079c1c1dad18eca9668b35d4e64a
parent28a6770eb45e0a5571b1f9a4716d95f34c49cb60 (diff)
Rewrite documentapi messagebus unit test to gtest.
-rw-r--r--documentapi/src/tests/messagebus/CMakeLists.txt1
-rw-r--r--documentapi/src/tests/messagebus/messagebus_test.cpp70
2 files changed, 35 insertions, 36 deletions
diff --git a/documentapi/src/tests/messagebus/CMakeLists.txt b/documentapi/src/tests/messagebus/CMakeLists.txt
index 22e213f29d8..ef597fbee10 100644
--- a/documentapi/src/tests/messagebus/CMakeLists.txt
+++ b/documentapi/src/tests/messagebus/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(documentapi_messagebus_test_app TEST
messagebus_test.cpp
DEPENDS
documentapi
+ GTest::gtest
)
vespa_add_test(NAME documentapi_messagebus_test_app COMMAND documentapi_messagebus_test_app)
diff --git a/documentapi/src/tests/messagebus/messagebus_test.cpp b/documentapi/src/tests/messagebus/messagebus_test.cpp
index 6ce76fc753f..39f9cedb38f 100644
--- a/documentapi/src/tests/messagebus/messagebus_test.cpp
+++ b/documentapi/src/tests/messagebus/messagebus_test.cpp
@@ -6,7 +6,8 @@
#include <vespa/document/repo/documenttyperepo.h>
#include <vespa/document/update/documentupdate.h>
#include <vespa/documentapi/documentapi.h>
-#include <vespa/vespalib/testkit/testapp.h>
+#include <vespa/vespalib/gtest/gtest.h>
+#include <vespa/vespalib/testkit/test_path.h>
using document::DocumentTypeRepo;
using document::readDocumenttypesConfig;
@@ -15,44 +16,35 @@ using mbus::Blob;
using mbus::Routable;
using mbus::IRoutingPolicy;
-class Test : public vespalib::TestApp {
- std::shared_ptr<const DocumentTypeRepo> _repo;
-
-public:
- Test();
- ~Test();
- int Main() override;
-
-private:
- void testMessage();
- void testProtocol();
- void get_document_message_is_not_sequenced();
- void stat_bucket_message_is_not_sequenced();
- void get_bucket_list_message_is_not_sequenced();
+class MessageBusTest : public testing::Test {
+protected:
+ static std::shared_ptr<const DocumentTypeRepo> _repo;
+ MessageBusTest();
+ ~MessageBusTest() override;
+ static void SetUpTestSuite();
+ static void TearDownTestSuite();
};
-TEST_APPHOOK(Test);
-
-int
-Test::Main()
-{
- TEST_INIT(_argv[0]);
- _repo.reset(new DocumentTypeRepo(readDocumenttypesConfig(
- TEST_PATH("../../../test/cfg/testdoctypes.cfg"))));
+MessageBusTest::MessageBusTest() = default;
+MessageBusTest::~MessageBusTest() = default;
- testMessage(); TEST_FLUSH();
- testProtocol(); TEST_FLUSH();
- get_document_message_is_not_sequenced(); TEST_FLUSH();
- stat_bucket_message_is_not_sequenced(); TEST_FLUSH();
- get_bucket_list_message_is_not_sequenced(); TEST_FLUSH();
+std::shared_ptr<const DocumentTypeRepo> MessageBusTest::_repo;
- TEST_DONE();
+void
+MessageBusTest::SetUpTestSuite()
+{
+ auto path = TEST_PATH("../../../test/cfg/testdoctypes.cfg");
+ _repo = std::make_shared<const DocumentTypeRepo>(readDocumenttypesConfig(path));
}
-Test::Test() = default;
-Test::~Test() = default;
+void
+MessageBusTest::TearDownTestSuite()
+{
+ _repo.reset();
+}
-void Test::testMessage() {
+TEST_F(MessageBusTest, test_message)
+{
const document::DataType *testdoc_type = _repo->getDocumentType("testdoc");
// Test one update.
@@ -85,7 +77,8 @@ void Test::testMessage() {
EXPECT_TRUE(msg2.getType() == DocumentProtocol::MESSAGE_UPDATEDOCUMENT);
}
-void Test::testProtocol() {
+TEST_F(MessageBusTest, test_protocol)
+{
DocumentProtocol protocol(_repo);
EXPECT_TRUE(protocol.getName() == "document");
@@ -99,17 +92,22 @@ void Test::testProtocol() {
EXPECT_TRUE(policy.get() == NULL);
}
-void Test::get_document_message_is_not_sequenced() {
+TEST_F(MessageBusTest, get_document_message_is_not_sequenced)
+{
GetDocumentMessage message(document::DocumentId("id:foo:bar::baz"));
EXPECT_FALSE(message.hasSequenceId());
}
-void Test::stat_bucket_message_is_not_sequenced() {
+TEST_F(MessageBusTest, stat_bucket_message_is_not_sequenced)
+{
StatBucketMessage message(document::BucketId(16, 1), "");
EXPECT_FALSE(message.hasSequenceId());
}
-void Test::get_bucket_list_message_is_not_sequenced() {
+TEST_F(MessageBusTest, get_bucket_list_message_is_not_sequenced)
+{
GetBucketListMessage message(document::BucketId(16, 1));
EXPECT_FALSE(message.hasSequenceId());
}
+
+GTEST_MAIN_RUN_ALL_TESTS()