aboutsummaryrefslogtreecommitdiffstats
path: root/storage/src/tests/distributor/garbagecollectiontest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'storage/src/tests/distributor/garbagecollectiontest.cpp')
-rw-r--r--storage/src/tests/distributor/garbagecollectiontest.cpp59
1 files changed, 21 insertions, 38 deletions
diff --git a/storage/src/tests/distributor/garbagecollectiontest.cpp b/storage/src/tests/distributor/garbagecollectiontest.cpp
index e2a6bb84065..122a1452632 100644
--- a/storage/src/tests/distributor/garbagecollectiontest.cpp
+++ b/storage/src/tests/distributor/garbagecollectiontest.cpp
@@ -1,42 +1,29 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <cppunit/extensions/HelperMacros.h>
#include <vespa/storageapi/message/removelocation.h>
#include <vespa/storage/distributor/operations/idealstate/garbagecollectionoperation.h>
#include <vespa/storage/distributor/idealstatemanager.h>
#include <tests/distributor/distributortestutil.h>
#include <vespa/storage/distributor/distributor.h>
#include <vespa/document/test/make_document_bucket.h>
+#include <vespa/vespalib/gtest/gtest.h>
using document::test::makeDocumentBucket;
+using namespace ::testing;
-namespace storage {
-namespace distributor {
+namespace storage::distributor {
-class GarbageCollectionOperationTest : public CppUnit::TestFixture, public DistributorTestUtil
-{
- CPPUNIT_TEST_SUITE(GarbageCollectionOperationTest);
- CPPUNIT_TEST(testSimple);
- CPPUNIT_TEST_SUITE_END();
-
-protected:
- void testSimple();
-
-public:
- void setUp() override {
+struct GarbageCollectionOperationTest : Test, DistributorTestUtil {
+ void SetUp() override {
createLinks();
};
- void tearDown() override {
+ void TearDown() override {
close();
}
};
-CPPUNIT_TEST_SUITE_REGISTRATION(GarbageCollectionOperationTest);
-
-void
-GarbageCollectionOperationTest::testSimple()
-{
+TEST_F(GarbageCollectionOperationTest, simple) {
enableDistributorClusterState("distributor:1 storage:2");
addNodesToBucketDB(document::BucketId(16, 1), "0=250/50/300,1=250/50/300");
getConfig().setGarbageCollection("music.date < 34", 3600);
@@ -48,34 +35,30 @@ GarbageCollectionOperationTest::testSimple()
op.setIdealStateManager(&getIdealStateManager());
op.start(_sender, framework::MilliSecTime(0));
- CPPUNIT_ASSERT_EQUAL((size_t)2, _sender.commands.size());
+ ASSERT_EQ(2, _sender.commands().size());
getClock().setAbsoluteTimeInSeconds(34);
for (uint32_t i = 0; i < 2; ++i) {
- std::shared_ptr<api::StorageCommand> msg = _sender.commands[i];
- CPPUNIT_ASSERT(msg->getType() == api::MessageType::REMOVELOCATION);
+ std::shared_ptr<api::StorageCommand> msg = _sender.command(i);
+ ASSERT_EQ(msg->getType(), api::MessageType::REMOVELOCATION);
- api::RemoveLocationCommand* tmp = (api::RemoveLocationCommand*)msg.get();
- CPPUNIT_ASSERT_EQUAL(vespalib::string("music.date < 34"),
- tmp->getDocumentSelection());
+ auto& tmp = dynamic_cast<api::RemoveLocationCommand&>(*msg);
+ EXPECT_EQ("music.date < 34", tmp.getDocumentSelection());
- std::shared_ptr<api::StorageReply> reply(tmp->makeReply().release());
- api::RemoveLocationReply* sreply = (api::RemoveLocationReply*)reply.get();
- sreply->setBucketInfo(api::BucketInfo(666, 90, 500));
+ std::shared_ptr<api::StorageReply> reply(tmp.makeReply());
+ auto& sreply = dynamic_cast<api::RemoveLocationReply&>(*reply);
+ sreply.setBucketInfo(api::BucketInfo(666, 90, 500));
op.receive(_sender, reply);
}
BucketDatabase::Entry entry = getBucket(document::BucketId(16, 1));
- CPPUNIT_ASSERT(entry.valid());
- CPPUNIT_ASSERT_EQUAL(2, (int)entry->getNodeCount());
- CPPUNIT_ASSERT_EQUAL(34, (int)entry->getLastGarbageCollectionTime());
- CPPUNIT_ASSERT_EQUAL(api::BucketInfo(666, 90, 500),
- entry->getNodeRef(0).getBucketInfo());
- CPPUNIT_ASSERT_EQUAL(api::BucketInfo(666, 90, 500),
- entry->getNodeRef(1).getBucketInfo());
+ ASSERT_TRUE(entry.valid());
+ ASSERT_EQ(2, entry->getNodeCount());
+ EXPECT_EQ(34, entry->getLastGarbageCollectionTime());
+ EXPECT_EQ(api::BucketInfo(666, 90, 500), entry->getNodeRef(0).getBucketInfo());
+ EXPECT_EQ(api::BucketInfo(666, 90, 500), entry->getNodeRef(1).getBucketInfo());
}
-} // distributor
-} // storage
+} // storage::distributor