diff options
author | Geir Storli <geirst@verizonmedia.com> | 2019-06-21 14:15:26 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2019-06-21 14:28:04 +0000 |
commit | d1eea019622e242b78ec3e7d3cd741914a2b7130 (patch) | |
tree | d42628402e0604b14d0576921f927f3c9a5dbffc /searchlib/src/tests/memoryindex | |
parent | 4373b26bdbd1f919bc574096e56ce6332bb5c5a3 (diff) |
Fix bugs in doUnpack() in memory posting iterator.
Diffstat (limited to 'searchlib/src/tests/memoryindex')
-rw-r--r-- | searchlib/src/tests/memoryindex/field_index/field_index_test.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp b/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp index de3b87194f8..ac5ef45e330 100644 --- a/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp +++ b/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp @@ -14,6 +14,7 @@ #include <vespa/searchlib/memoryindex/field_inverter.h> #include <vespa/searchlib/memoryindex/ordered_field_index_inserter.h> #include <vespa/searchlib/memoryindex/posting_iterator.h> +#include <vespa/searchlib/queryeval/iterators.h> #include <vespa/searchlib/test/index/mock_field_length_inspector.h> #include <vespa/searchlib/test/memoryindex/wrap_inserter.h> #include <vespa/vespalib/btree/btreenodeallocator.hpp> @@ -31,6 +32,7 @@ using namespace fef; using namespace index; using document::Document; +using queryeval::RankedSearchIteratorBase; using queryeval::SearchIterator; using search::index::schema::CollectionType; using search::index::schema::DataType; @@ -641,6 +643,9 @@ struct FieldIndexInterleavedFeaturesTest : public FieldIndexTest<FieldIndex<true EXPECT_EQ(exp_field_positions, toString(match_data)); EXPECT_EQ(exp_num_occs, match_data.term.getNumOccs()); EXPECT_EQ(exp_field_length, match_data.term.getFieldLength()); + EXPECT_EQ(10, match_data.term.getDocId()); + auto& ranked_itr = dynamic_cast<RankedSearchIteratorBase&>(*itr); + EXPECT_TRUE(ranked_itr.getUnpacked()); EXPECT_TRUE(!itr->seek(11)); EXPECT_TRUE(itr->isAtEnd()); } @@ -667,6 +672,13 @@ TEST_F(FieldIndexInterleavedFeaturesTest, both_normal_and_interleaved_features_a expect_features_unpacked("{5:0,1}", 2, 5); } +TEST_F(FieldIndexInterleavedFeaturesTest, no_features_are_unpacked) +{ + match_data.term.setNeedNormalFeatures(false); + match_data.term.setNeedInterleavedFeatures(false); + expect_features_unpacked("{1000000:}", 0, 0); +} + Schema make_multi_field_schema() { |