summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@oath.com>2017-09-15 14:23:49 +0000
committerTor Egge <Tor.Egge@oath.com>2017-09-15 14:23:49 +0000
commit6237802f98df78c21643b72814ef4a4ea2752f1f (patch)
treea10d55dc29434bfdbb5a2b9465d52ea388cc5ea4
parent86269703bd714a88e23def8a842466e35609c9f3 (diff)
Use a new fixture for the last 4 tests to reduce amount of duplicated code.
-rw-r--r--searchcore/src/tests/proton/reference/gid_to_lid_change_handler/gid_to_lid_change_handler_test.cpp89
1 files changed, 48 insertions, 41 deletions
diff --git a/searchcore/src/tests/proton/reference/gid_to_lid_change_handler/gid_to_lid_change_handler_test.cpp b/searchcore/src/tests/proton/reference/gid_to_lid_change_handler/gid_to_lid_change_handler_test.cpp
index 263159cefea..cddce944e4d 100644
--- a/searchcore/src/tests/proton/reference/gid_to_lid_change_handler/gid_to_lid_change_handler_test.cpp
+++ b/searchcore/src/tests/proton/reference/gid_to_lid_change_handler/gid_to_lid_change_handler_test.cpp
@@ -222,74 +222,81 @@ TEST_F("Test that we keep old listener when registering duplicate", Fixture)
TEST_DO(stats.assertListeners(2, 1, 1));
}
-TEST_F("Test that put is ignored if we have a pending remove", Fixture)
+class StatsFixture : public Fixture
+{
+ ListenerStats &_stats;
+
+public:
+ StatsFixture()
+ : Fixture(),
+ _stats(addStats())
+ {
+ addListener(std::make_unique<MyListener>(_stats, "test", "testdoc"));
+ }
+
+ ~StatsFixture()
+ {
+ removeListeners("testdoc", {});
+ }
+
+ void assertChanges(uint32_t expPutChanges, uint32_t expRemoveChanges)
+ {
+ TEST_DO(_stats.assertChanges(expPutChanges, expRemoveChanges));
+ }
+};
+
+TEST_F("Test that put is ignored if we have a pending remove", StatsFixture)
{
- auto &stats = f.addStats();
- auto listener = std::make_unique<MyListener>(stats, "test", "testdoc");
- f.addListener(std::move(listener));
f.notifyRemove(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 10, 10);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemoveDone(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 11, 30);
- TEST_DO(stats.assertChanges(1, 1));
- f.removeListeners("testdoc", {});
+ TEST_DO(f.assertChanges(1, 1));
}
-TEST_F("Test that pending removes are merged", Fixture)
+TEST_F("Test that pending removes are merged", StatsFixture)
{
- auto &stats = f.addStats();
- auto listener = std::make_unique<MyListener>(stats, "test", "testdoc");
- f.addListener(std::move(listener));
f.notifyRemove(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemove(toGid(doc1), 40);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 10, 10);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemoveDone(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 11, 30);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemoveDone(toGid(doc1), 40);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 12, 50);
- TEST_DO(stats.assertChanges(1, 1));
- f.removeListeners("testdoc", {});
+ TEST_DO(f.assertChanges(1, 1));
}
-TEST_F("Test that out of order notifyRemoveDone is handled", Fixture)
+TEST_F("Test that out of order notifyRemoveDone is handled", StatsFixture)
{
- auto &stats = f.addStats();
- auto listener = std::make_unique<MyListener>(stats, "test", "testdoc");
- f.addListener(std::move(listener));
- f.notifyRemove(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ f.notifyRemove(toGid(doc1), 20);
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemove(toGid(doc1), 40);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemoveDone(toGid(doc1), 40);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyRemoveDone(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 12, 50);
- TEST_DO(stats.assertChanges(1, 1));
- f.removeListeners("testdoc", {});
+ TEST_DO(f.assertChanges(1, 1));
}
-TEST_F("Test that out of order notifyPutDone is handled", Fixture)
+TEST_F("Test that out of order notifyPutDone is handled", StatsFixture)
{
- auto &stats = f.addStats();
- auto listener = std::make_unique<MyListener>(stats, "test", "testdoc");
- f.addListener(std::move(listener));
- f.notifyRemove(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(0, 1));
+ f.notifyRemove(toGid(doc1), 20);
+ TEST_DO(f.assertChanges(0, 1));
f.notifyPutDone(toGid(doc1), 12, 50);
- TEST_DO(stats.assertChanges(1, 1));
+ TEST_DO(f.assertChanges(1, 1));
f.notifyRemoveDone(toGid(doc1), 20);
- TEST_DO(stats.assertChanges(1, 1));
- f.removeListeners("testdoc", {});
+ TEST_DO(f.assertChanges(1, 1));
}
}