summaryrefslogtreecommitdiffstats
path: root/searchcore/src/tests/proton/documentdb/storeonlyfeedview
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2021-11-30 08:49:06 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2021-11-30 08:49:06 +0000
commit1195f94bcba1366ac1e7f94c3c6d714fc2a1d8f8 (patch)
tree329556b8de2b711381d1f49b7812bbd041c1ee6e /searchcore/src/tests/proton/documentdb/storeonlyfeedview
parentdd67bb4a5b7b5ca609f32b6a0255db4ccc4abe6f (diff)
Add DoneCallback to heartBeat so it can be tested without relying on sync.
Diffstat (limited to 'searchcore/src/tests/proton/documentdb/storeonlyfeedview')
-rw-r--r--searchcore/src/tests/proton/documentdb/storeonlyfeedview/storeonlyfeedview_test.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/searchcore/src/tests/proton/documentdb/storeonlyfeedview/storeonlyfeedview_test.cpp b/searchcore/src/tests/proton/documentdb/storeonlyfeedview/storeonlyfeedview_test.cpp
index 526b94a3525..fb609b1829e 100644
--- a/searchcore/src/tests/proton/documentdb/storeonlyfeedview/storeonlyfeedview_test.cpp
+++ b/searchcore/src/tests/proton/documentdb/storeonlyfeedview/storeonlyfeedview_test.cpp
@@ -114,12 +114,12 @@ struct MyMinimalFeedView : public MyMinimalFeedViewBase, public StoreOnlyFeedVie
StoreOnlyFeedView::removeIndexedFields(s, l, onWriteDone);
++removeMultiIndexFieldsCount;
}
- void heartBeatIndexedFields(SerialNum s) override {
- StoreOnlyFeedView::heartBeatIndexedFields(s);
+ void heartBeatIndexedFields(SerialNum s, IDestructorCallbackSP onDone) override {
+ StoreOnlyFeedView::heartBeatIndexedFields(s, onDone);
++heartBeatIndexedFieldsCount;
}
- void heartBeatAttributes(SerialNum s) override {
- StoreOnlyFeedView::heartBeatAttributes(s);
+ void heartBeatAttributes(SerialNum s, IDestructorCallbackSP onDone) override {
+ StoreOnlyFeedView::heartBeatAttributes(s, onDone);
++heartBeatAttributesCount;
}
};
@@ -399,7 +399,11 @@ TEST_F("require that heartbeat propagates and commits meta store", Fixture)
EXPECT_EQUAL(0, f.feedview->heartBeatIndexedFieldsCount);
EXPECT_EQUAL(0, f.feedview->heartBeatAttributesCount);
EXPECT_EQUAL(0, f.heartbeatCount);
- f.runInMasterAndSyncAll([&]() { f.feedview->heartBeat(2); });
+ vespalib::Gate gate;
+ f.runInMaster([&, onDone = std::make_shared<vespalib::GateCallback>(gate)]() {
+ f.feedview->heartBeat(2, std::move(onDone));
+ });
+ gate.await();
EXPECT_EQUAL(2u, f.metaStore->getStatus().getLastSyncToken());
EXPECT_EQUAL(1, f.feedview->heartBeatIndexedFieldsCount);
EXPECT_EQUAL(1, f.feedview->heartBeatAttributesCount);