aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-01-30 16:22:09 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2017-01-31 00:26:12 +0100
commitc55b4b0788358c3221a7f74439bc41a61515afc7 (patch)
tree7ee2b767aa42707521edf9c53784f47798b79507 /searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
parentf2a01bb1fc8c80a2aad9498a66b6b46435c8d2ab (diff)
Theoretically complete termwise conformance test.
Diffstat (limited to 'searchlib/src/tests/attribute/bitvector/bitvector_test.cpp')
-rw-r--r--searchlib/src/tests/attribute/bitvector/bitvector_test.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp b/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
index 5a801826208..c528122aded 100644
--- a/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
+++ b/searchlib/src/tests/attribute/bitvector/bitvector_test.cpp
@@ -13,6 +13,7 @@
#include <vespa/searchlib/attribute/i_document_weight_attribute.h>
#include <vespa/searchlib/queryeval/document_weight_search_iterator.h>
#include <vespa/searchlib/test/initrange.h>
+#include <vespa/searchlib/test/termwise.h>
#include <vespa/searchlib/common/bitvectoriterator.h>
#include <vespa/searchlib/parsequery/parse.h>
@@ -631,5 +632,26 @@ TEST("Test bitvector iterators adheres to initRange") {
initRangeTest.verify(*BitVectorIterator::create(bv.get(), initRangeTest.getDocIdLimit(), tfmd, true));
}
+class Verifier : public search::test::TermwiseVerifier {
+public:
+ Verifier() : _bv(BitVector::create(getDocIdLimit())) {
+ for (uint32_t docId: getExpectedDocIds()) {
+ _bv->setBit(docId);
+ }
+ }
+
+ SearchIterator::UP create(bool strict) const override {
+ return BitVectorIterator::create(_bv.get(), getDocIdLimit(), _tfmd, strict);
+ }
+
+private:
+ mutable TermFieldMatchData _tfmd;
+ BitVector::UP _bv;
+};
+TEST("Test bitvector iterators adheres to termwise search too") {
+ Verifier termwiseTest;
+ termwiseTest.verify();
+}
+
TEST_MAIN() { TEST_RUN_ALL(); }