diff options
Diffstat (limited to 'searchlib')
7 files changed, 1 insertions, 292 deletions
diff --git a/searchlib/CMakeLists.txt b/searchlib/CMakeLists.txt index 3897cefc50f..1db9018bd21 100644 --- a/searchlib/CMakeLists.txt +++ b/searchlib/CMakeLists.txt @@ -187,12 +187,9 @@ vespa_define_module( src/tests/query src/tests/queryeval src/tests/queryeval/blueprint - src/tests/queryeval/booleanmatchiteratorwrapper src/tests/queryeval/dot_product src/tests/queryeval/equiv src/tests/queryeval/fake_searchable - src/tests/queryeval/filter_wrapper - src/tests/queryeval/wrappers src/tests/queryeval/getnodeweight src/tests/queryeval/monitoring_search_iterator src/tests/queryeval/multibitvectoriterator @@ -208,6 +205,7 @@ vespa_define_module( src/tests/queryeval/weak_and_heap src/tests/queryeval/weak_and_scorers src/tests/queryeval/weighted_set_term + src/tests/queryeval/wrappers src/tests/rankingexpression/feature_name_extractor src/tests/rankingexpression/intrinsic_blueprint_adapter src/tests/ranksetup diff --git a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/.cvsignore b/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/.cvsignore deleted file mode 100644 index 9e6565f9d16..00000000000 --- a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/.cvsignore +++ /dev/null @@ -1,3 +0,0 @@ -.depend -Makefile -booleanmatchiteratorwrapper_test diff --git a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/.gitignore b/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/.gitignore deleted file mode 100644 index b568b87514a..00000000000 --- a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -.depend -Makefile -booleanmatchiteratorwrapper_test -searchlib_booleanmatchiteratorwrapper_test_app diff --git a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/CMakeLists.txt b/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/CMakeLists.txt deleted file mode 100644 index d97fe5b12d7..00000000000 --- a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/CMakeLists.txt +++ /dev/null @@ -1,9 +0,0 @@ -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -vespa_add_executable(searchlib_booleanmatchiteratorwrapper_test_app TEST - SOURCES - booleanmatchiteratorwrapper_test.cpp - DEPENDS - searchlib - searchlib_test -) -vespa_add_test(NAME searchlib_booleanmatchiteratorwrapper_test_app COMMAND searchlib_booleanmatchiteratorwrapper_test_app) diff --git a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/booleanmatchiteratorwrapper_test.cpp b/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/booleanmatchiteratorwrapper_test.cpp deleted file mode 100644 index 7d4551a5c7d..00000000000 --- a/searchlib/src/tests/queryeval/booleanmatchiteratorwrapper/booleanmatchiteratorwrapper_test.cpp +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. - -#include <vespa/vespalib/testkit/testapp.h> -#include <vespa/searchlib/queryeval/booleanmatchiteratorwrapper.h> -#include <vespa/searchlib/fef/termfieldmatchdata.h> -#include <vespa/searchlib/common/bitvectoriterator.h> -#include <vespa/searchlib/test/searchiteratorverifier.h> - -using namespace search::fef; -using namespace search::queryeval; -using search::BitVector; -using search::BitVectorIterator; - -struct DummyItr : public SearchIterator { - static uint32_t seekCnt; - static uint32_t unpackCnt; - static uint32_t dtorCnt; - static uint32_t _unpackedDocId; - TermFieldMatchData *match; - - DummyItr(TermFieldMatchData *m) { - match = m; - } - - ~DummyItr() { - ++dtorCnt; - } - - void doSeek(uint32_t docid) override { - ++seekCnt; - if (docid <= 10) { - setDocId(10); - } else if (docid <= 20) { - setDocId(20); - } else { - setAtEnd(); - } - } - - void doUnpack(uint32_t docid) override { - ++unpackCnt; - if (match != 0) { - _unpackedDocId = docid; - } - } -}; -uint32_t DummyItr::seekCnt = 0; -uint32_t DummyItr::unpackCnt = 0; -uint32_t DummyItr::dtorCnt = 0; -uint32_t DummyItr::_unpackedDocId = 0; - - -TEST("mostly everything") { - EXPECT_EQUAL(DummyItr::seekCnt, 0u); - EXPECT_EQUAL(DummyItr::unpackCnt, 0u); - EXPECT_EQUAL(DummyItr::dtorCnt, 0u); - { // without wrapper - TermFieldMatchData match; - DummyItr::_unpackedDocId = 0; - SearchIterator::UP search(new DummyItr(&match)); - search->initFullRange(); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(1u)); - EXPECT_EQUAL(search->getDocId(), 10u); - EXPECT_TRUE(search->seek(10)); - search->unpack(10); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 10u); - EXPECT_TRUE(!search->seek(15)); - EXPECT_EQUAL(search->getDocId(), 20u); - EXPECT_TRUE(search->seek(20)); - search->unpack(20); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 20u); - EXPECT_TRUE(!search->seek(25)); - EXPECT_TRUE(search->isAtEnd()); - } - EXPECT_EQUAL(DummyItr::seekCnt, 3u); - EXPECT_EQUAL(DummyItr::unpackCnt, 2u); - EXPECT_EQUAL(DummyItr::dtorCnt, 1u); - { // with wrapper - TermFieldMatchData match; - TermFieldMatchDataArray tfmda; - tfmda.add(&match); - DummyItr::_unpackedDocId = 0; - SearchIterator::UP search(new BooleanMatchIteratorWrapper(SearchIterator::UP(new DummyItr(&match)), tfmda)); - search->initFullRange(); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(1u)); - EXPECT_EQUAL(search->getDocId(), 10u); - EXPECT_TRUE(search->seek(10)); - search->unpack(10); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(15)); - EXPECT_EQUAL(search->getDocId(), 20u); - EXPECT_TRUE(search->seek(20)); - search->unpack(20); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(25)); - EXPECT_TRUE(search->isAtEnd()); - } - EXPECT_EQUAL(DummyItr::seekCnt, 6u); - EXPECT_EQUAL(DummyItr::unpackCnt, 2u); - EXPECT_EQUAL(DummyItr::dtorCnt, 2u); - { // with wrapper, without match data - SearchIterator::UP search(new BooleanMatchIteratorWrapper(SearchIterator::UP(new DummyItr(0)), TermFieldMatchDataArray())); - search->initFullRange(); - EXPECT_TRUE(!search->seek(1u)); - EXPECT_EQUAL(search->getDocId(), 10u); - EXPECT_TRUE(search->seek(10)); - search->unpack(10); - EXPECT_TRUE(!search->seek(15)); - EXPECT_EQUAL(search->getDocId(), 20u); - EXPECT_TRUE(search->seek(20)); - search->unpack(20); - EXPECT_TRUE(!search->seek(25)); - EXPECT_TRUE(search->isAtEnd()); - } - EXPECT_EQUAL(DummyItr::seekCnt, 9u); - EXPECT_EQUAL(DummyItr::unpackCnt, 2u); - EXPECT_EQUAL(DummyItr::dtorCnt, 3u); -} - -class Verifier : public search::test::SearchIteratorVerifier { -public: - ~Verifier(); - SearchIterator::UP create(bool strict) const override { - return std::make_unique<BooleanMatchIteratorWrapper>(createIterator(getExpectedDocIds(), strict), _tfmda);; - } -private: - mutable TermFieldMatchDataArray _tfmda; -}; - -Verifier::~Verifier() {} - -TEST("Test that boolean wrapper iterators adheres to SearchIterator requirements") { - Verifier searchIteratorVerifier; - searchIteratorVerifier.verify(); -} - -TEST_MAIN() { TEST_RUN_ALL(); } diff --git a/searchlib/src/tests/queryeval/filter_wrapper/CMakeLists.txt b/searchlib/src/tests/queryeval/filter_wrapper/CMakeLists.txt deleted file mode 100644 index bab956e73bb..00000000000 --- a/searchlib/src/tests/queryeval/filter_wrapper/CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. - -vespa_add_executable(searchlib_filter_wrapper_test_app TEST - SOURCES - filter_wrapper_test.cpp - DEPENDS - searchlib - searchlib_test -) -vespa_add_test(NAME searchlib_filter_wrapper_test_app COMMAND searchlib_filter_wrapper_test_app) diff --git a/searchlib/src/tests/queryeval/filter_wrapper/filter_wrapper_test.cpp b/searchlib/src/tests/queryeval/filter_wrapper/filter_wrapper_test.cpp deleted file mode 100644 index 707f51c551a..00000000000 --- a/searchlib/src/tests/queryeval/filter_wrapper/filter_wrapper_test.cpp +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. - -#include <vespa/vespalib/testkit/testapp.h> -#include <vespa/searchlib/queryeval/filter_wrapper.h> -#include <vespa/searchlib/fef/termfieldmatchdata.h> -#include <vespa/searchlib/common/bitvectoriterator.h> -#include <vespa/searchlib/test/searchiteratorverifier.h> - -using namespace search::fef; -using namespace search::queryeval; -using search::BitVector; -using search::BitVectorIterator; - -struct DummyItr : public SearchIterator { - static uint32_t seekCnt; - static uint32_t unpackCnt; - static uint32_t dtorCnt; - static uint32_t _unpackedDocId; - TermFieldMatchData *match; - - DummyItr(TermFieldMatchData *m) { - match = m; - } - - ~DummyItr() { - ++dtorCnt; - } - - void doSeek(uint32_t docid) override { - ++seekCnt; - if (docid <= 10) { - setDocId(10); - } else if (docid <= 20) { - setDocId(20); - } else { - setAtEnd(); - } - } - - void doUnpack(uint32_t docid) override { - ++unpackCnt; - if (match != 0) { - _unpackedDocId = docid; - } - } -}; -uint32_t DummyItr::seekCnt = 0; -uint32_t DummyItr::unpackCnt = 0; -uint32_t DummyItr::dtorCnt = 0; -uint32_t DummyItr::_unpackedDocId = 0; - - -TEST("filter wrapper forwards as expected") { - EXPECT_EQUAL(DummyItr::seekCnt, 0u); - EXPECT_EQUAL(DummyItr::unpackCnt, 0u); - EXPECT_EQUAL(DummyItr::dtorCnt, 0u); - { // without wrapper - TermFieldMatchData match; - DummyItr::_unpackedDocId = 0; - SearchIterator::UP search(new DummyItr(&match)); - search->initFullRange(); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(1u)); - EXPECT_EQUAL(search->getDocId(), 10u); - EXPECT_TRUE(search->seek(10)); - search->unpack(10); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 10u); - EXPECT_TRUE(!search->seek(15)); - EXPECT_EQUAL(search->getDocId(), 20u); - EXPECT_TRUE(search->seek(20)); - search->unpack(20); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 20u); - EXPECT_TRUE(!search->seek(25)); - EXPECT_TRUE(search->isAtEnd()); - } - EXPECT_EQUAL(DummyItr::seekCnt, 3u); - EXPECT_EQUAL(DummyItr::unpackCnt, 2u); - EXPECT_EQUAL(DummyItr::dtorCnt, 1u); - { // with wrapper - TermFieldMatchData match; - TermFieldMatchDataArray tfmda; - tfmda.add(&match); - DummyItr::_unpackedDocId = 0; - auto search = std::make_unique<FilterWrapper>(1); - auto to_wrap = std::make_unique<DummyItr>(search->tfmda()[0]); - search->wrap(std::move(to_wrap)); - search->initFullRange(); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(1u)); - EXPECT_EQUAL(search->getDocId(), 10u); - EXPECT_TRUE(search->seek(10)); - search->unpack(10); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(15)); - EXPECT_EQUAL(search->getDocId(), 20u); - EXPECT_TRUE(search->seek(20)); - search->unpack(20); - EXPECT_EQUAL(DummyItr::_unpackedDocId, 0u); - EXPECT_TRUE(!search->seek(25)); - EXPECT_TRUE(search->isAtEnd()); - } - EXPECT_EQUAL(DummyItr::seekCnt, 6u); - EXPECT_EQUAL(DummyItr::unpackCnt, 2u); - EXPECT_EQUAL(DummyItr::dtorCnt, 2u); -} - -class Verifier : public search::test::SearchIteratorVerifier { -public: - ~Verifier(); - SearchIterator::UP create(bool strict) const override { - auto search = std::make_unique<FilterWrapper>(1); - search->wrap(createIterator(getExpectedDocIds(), strict)); - return search; - } -}; - -Verifier::~Verifier() {} - -TEST("Test that filter wrapper iterators adheres to SearchIterator requirements") { - Verifier searchIteratorVerifier; - searchIteratorVerifier.verify(); -} - -TEST_MAIN() { TEST_RUN_ALL(); } |