diff options
author | Tor Egge <tegge@oath.com> | 2019-01-04 14:27:45 +0000 |
---|---|---|
committer | Tor Egge <tegge@oath.com> | 2019-01-04 14:27:45 +0000 |
commit | 8c5ba8a3b431f9aecbff726f9cb73ceb6cd7ca26 (patch) | |
tree | cbe6e91dd1cfb088b67ded6980d0fa8d46c14587 /searchlib/src/tests/attribute/sourceselector | |
parent | 0fb6c8f4efd731e57c867246802aae12905a0763 (diff) |
Correct tracking of docIdLimit in FixedSourceSelector.
Diffstat (limited to 'searchlib/src/tests/attribute/sourceselector')
-rw-r--r-- | searchlib/src/tests/attribute/sourceselector/sourceselector_test.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/searchlib/src/tests/attribute/sourceselector/sourceselector_test.cpp b/searchlib/src/tests/attribute/sourceselector/sourceselector_test.cpp index 1eda0b7cb67..75a0ccf6ab9 100644 --- a/searchlib/src/tests/attribute/sourceselector/sourceselector_test.cpp +++ b/searchlib/src/tests/attribute/sourceselector/sourceselector_test.cpp @@ -49,6 +49,7 @@ private: template <typename SelectorType> void requireThatSourcesAreCountedCorrectly(); void requireThatSourcesAreCountedCorrectly(); + void requireThatDocIdLimitIsCorrect(); }; int @@ -64,6 +65,7 @@ Test::Main() TEST_DO(requireThatSelectorCanSaveAndLoad()); TEST_DO(requireThatCompleteSourceRangeIsHandled()); TEST_DO(requireThatSourcesAreCountedCorrectly()); + TEST_DO(requireThatDocIdLimitIsCorrect()); TEST_DONE(); } @@ -219,6 +221,21 @@ Test::requireThatSourcesAreCountedCorrectly() requireThatSourcesAreCountedCorrectly<FixedSourceSelector>(); } +void +Test::requireThatDocIdLimitIsCorrect() +{ + FixedSourceSelector selector(default_source, base_file_name); + EXPECT_EQUAL(0u, selector.getDocIdLimit()); + selector.setSource(8, 10); + EXPECT_EQUAL(9u, selector.getDocIdLimit()); + selector.compactLidSpace(4); + EXPECT_EQUAL(4u, selector.getDocIdLimit()); + selector.setSource(6, 10); + EXPECT_EQUAL(7u, selector.getDocIdLimit()); + auto selector2 = selector.cloneAndSubtract(base_file_name2, 3); + EXPECT_EQUAL(7u, selector2->getDocIdLimit()); +} + } // namespace TEST_APPHOOK(Test); |