diff options
author | Arne H Juul <arnej@yahooinc.com> | 2021-10-19 11:08:39 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2021-10-19 11:08:39 +0000 |
commit | a7f289541ff64edfeea11d4db4310c5245f1f823 (patch) | |
tree | 29c2e575f3f62633e1bdf5ad93290c29211583a0 /searchlib/src/tests/query | |
parent | 4a93eeb139aeb500057c9527f19b0c47db2f1a5c (diff) |
use custom types for true/false (NodeTypes::True, ProtonTrue, etc)
Diffstat (limited to 'searchlib/src/tests/query')
-rw-r--r-- | searchlib/src/tests/query/customtypevisitor_test.cpp | 16 | ||||
-rw-r--r-- | searchlib/src/tests/query/querybuilder_test.cpp | 4 |
2 files changed, 17 insertions, 3 deletions
diff --git a/searchlib/src/tests/query/customtypevisitor_test.cpp b/searchlib/src/tests/query/customtypevisitor_test.cpp index 112e49cd1c1..da3d8ffa115 100644 --- a/searchlib/src/tests/query/customtypevisitor_test.cpp +++ b/searchlib/src/tests/query/customtypevisitor_test.cpp @@ -42,7 +42,11 @@ struct MyDotProduct : DotProduct { MyDotProduct() : DotProduct(0, "view", 0, Wei struct MyWandTerm : WandTerm { MyWandTerm() : WandTerm(0, "view", 0, Weight(42), 57, 67, 77.7) {} }; struct MyPredicateQuery : InitTerm<PredicateQuery> {}; struct MyRegExpTerm : InitTerm<RegExpTerm> {}; -struct MyNearestNeighborTerm : NearestNeighborTerm {}; +struct MyNearestNeighborTerm : NearestNeighborTerm { + MyNearestNeighborTerm() : NearestNeighborTerm("qt", "fn", 0, Weight(42), 10, true, 666, 1234.5) {} +}; +struct MyTrue : TrueQueryNode {}; +struct MyFalse : FalseQueryNode {}; struct MyQueryNodeTypes { typedef MyAnd And; @@ -68,6 +72,8 @@ struct MyQueryNodeTypes { typedef MyPredicateQuery PredicateQuery; typedef MyRegExpTerm RegExpTerm; typedef MyNearestNeighborTerm NearestNeighborTerm; + typedef MyFalse False; + typedef MyTrue True; }; class MyCustomVisitor : public CustomTypeVisitor<MyQueryNodeTypes> @@ -104,8 +110,8 @@ public: void visit(MyPredicateQuery &) override { setVisited<MyPredicateQuery>(); } void visit(MyRegExpTerm &) override { setVisited<MyRegExpTerm>(); } void visit(MyNearestNeighborTerm &) override { setVisited<MyNearestNeighborTerm>(); } - void visit(TrueQueryNode &) override {} - void visit(FalseQueryNode &) override {} + void visit(MyTrue &) override { setVisited<MyTrue>(); } + void visit(MyFalse &) override { setVisited<MyFalse>(); } }; template <class T> @@ -138,6 +144,10 @@ TEST("customtypevisitor_test") { requireThatNodeIsVisited<MyWandTerm>(); requireThatNodeIsVisited<MyPredicateQuery>(); requireThatNodeIsVisited<MyRegExpTerm>(); + requireThatNodeIsVisited<MyLocationTerm>(); + requireThatNodeIsVisited<MyNearestNeighborTerm>(); + requireThatNodeIsVisited<MyTrue>(); + requireThatNodeIsVisited<MyFalse>(); } } // namespace diff --git a/searchlib/src/tests/query/querybuilder_test.cpp b/searchlib/src/tests/query/querybuilder_test.cpp index 0c784287e5c..b421084bbef 100644 --- a/searchlib/src/tests/query/querybuilder_test.cpp +++ b/searchlib/src/tests/query/querybuilder_test.cpp @@ -409,6 +409,8 @@ struct MyNearestNeighborTerm : NearestNeighborTerm { : NearestNeighborTerm(query_tensor_name, field_name, i, w, target_num_hits, allow_approximate, explore_additional_hits, distance_threshold) {} }; +struct MyTrue : TrueQueryNode {}; +struct MyFalse : FalseQueryNode {}; struct MyQueryNodeTypes { typedef MyAnd And; @@ -434,6 +436,8 @@ struct MyQueryNodeTypes { typedef MyPredicateQuery PredicateQuery; typedef MyRegExpTerm RegExpTerm; typedef MyNearestNeighborTerm NearestNeighborTerm; + typedef MyTrue True; + typedef MyFalse False; }; TEST("require that Custom Query Trees Can Be Built") { |