diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-09-29 12:52:48 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-09-29 14:24:52 +0000 |
commit | 5a5ea56ae3eec1ed8e69048f0703e7da6a1d6cb8 (patch) | |
tree | 3cf92f155814d9919d1e389f1cc2d771d4d1abd6 /searchlib/src | |
parent | 8b390bd316a30d3f02d7420da30b059ff939cb6b (diff) |
Add test for single term wsets
Diffstat (limited to 'searchlib/src')
-rw-r--r-- | searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp | 44 |
1 files changed, 32 insertions, 12 deletions
diff --git a/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp b/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp index de5fc1a0c05..ec610d20928 100644 --- a/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp +++ b/searchlib/src/tests/queryeval/weighted_set_term/weighted_set_term_test.cpp @@ -147,23 +147,31 @@ struct MockFixture { } // namespace <unnamed> -void run_simple(bool field_is_filter, bool term_is_not_needed) +void run_simple(bool field_is_filter, bool term_is_not_needed, bool singleTerm) { FakeSearchable index; setupFakeSearchable(index); FakeResult expect; if (field_is_filter || term_is_not_needed) { - expect.doc(3) - .doc(5) - .doc(7); + expect.doc(3); + if ( ! singleTerm) { + expect.doc(5) + .doc(7); + } } else { - expect.doc(3).elem(0).weight(30).pos(0) - .doc(5).elem(0).weight(50).pos(0) - .doc(7).elem(0).weight(70).pos(0); + expect.doc(3).elem(0).weight(30).pos(0); + if (!singleTerm) { + expect.doc(5).elem(0).weight(50).pos(0) + .doc(7).elem(0).weight(70).pos(0); + } } WS ws; - ws.add("7", 70).add("5", 50).add("3", 30).add("100", 1000) - .set_field_is_filter(field_is_filter) + if (singleTerm) { + ws.add("3", 30).add("100", 1000); + } else { + ws.add("7", 70).add("5", 50).add("3", 30).add("100", 1000); + } + ws.set_field_is_filter(field_is_filter) .set_term_is_not_needed(term_is_not_needed); EXPECT_TRUE(ws.isGenericSearch(index, "field", true)); @@ -178,15 +186,27 @@ void run_simple(bool field_is_filter, bool term_is_not_needed) } TEST("testSimple") { - TEST_DO(run_simple(false, false)); + TEST_DO(run_simple(false, false, false)); } TEST("testSimple filter field") { - TEST_DO(run_simple(true, false)); + TEST_DO(run_simple(true, false, false)); } TEST("testSimple unranked") { - TEST_DO(run_simple(false, true)); + TEST_DO(run_simple(false, true, false)); +} + +TEST("testSimple single") { + TEST_DO(run_simple(false, false, true)); +} + +TEST("testSimple single filter field") { + TEST_DO(run_simple(true, false, true)); +} + +TEST("testSimple single unranked") { + TEST_DO(run_simple(false, true, true)); } void run_multi(bool field_is_filter, bool term_is_not_needed) |