aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@yahooinc.com>2023-09-29 20:08:47 +0200
committerTor Egge <Tor.Egge@yahooinc.com>2023-09-29 20:08:47 +0200
commitbaff3ec345935d4f538b67d59b7d6a960da0632e (patch)
treefb70ef142fe54c4ed7a9b716b28d9186bd9b5287 /searchlib/src/tests
parent023cac9bcf8525037e0e31d21d5a3c981ea65e90 (diff)
Normalize class names in attribute weighted set blueprint test.
Diffstat (limited to 'searchlib/src/tests')
-rw-r--r--searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp31
1 files changed, 27 insertions, 4 deletions
diff --git a/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp b/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp
index 6c6f05fd5e2..2c05486ab9d 100644
--- a/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp
+++ b/searchlib/src/tests/attribute/searchable/attribute_weighted_set_blueprint_test.cpp
@@ -182,6 +182,29 @@ TEST("attribute_weighted_set_test") {
test_tokens(false, {3});
}
+namespace {
+
+void
+normalize_class_name_helper(vespalib::string& class_name, const vespalib::string& old, const vespalib::string& replacement)
+{
+ for (;;) {
+ auto pos = class_name.find(old);
+ if (pos == vespalib::string::npos) {
+ break;
+ }
+ class_name.replace(pos, old.size(), replacement);
+ }
+}
+
+vespalib::string normalize_class_name(vespalib::string class_name)
+{
+ normalize_class_name_helper(class_name, "long long", "long");
+ normalize_class_name_helper(class_name, ">>", "> >");
+ return class_name;
+}
+
+}
+
TEST("attribute_weighted_set_single_token_filter_lifted_out") {
MockAttributeManager manager;
setupAttributeManager(manager, true);
@@ -191,13 +214,13 @@ TEST("attribute_weighted_set_single_token_filter_lifted_out") {
WS ws = WS(manager).add("3", 30);
EXPECT_EQUAL("search::FilterAttributeIteratorStrict<search::attribute::SingleNumericSearchContext<long, search::attribute::NumericMatcher<long> > >",
- ws.createSearch(adapter, "integer", true)->getClassName());
+ normalize_class_name(ws.createSearch(adapter, "integer", true)->getClassName()));
EXPECT_EQUAL("search::FilterAttributeIteratorT<search::attribute::SingleNumericSearchContext<long, search::attribute::NumericMatcher<long> > >",
- ws.createSearch(adapter, "integer", false)->getClassName());
+ normalize_class_name(ws.createSearch(adapter, "integer", false)->getClassName()));
EXPECT_EQUAL("search::FilterAttributeIteratorStrict<search::attribute::SingleEnumSearchContext<char const*, search::attribute::StringSearchContext> >",
- ws.createSearch(adapter, "string", true)->getClassName());
+ normalize_class_name(ws.createSearch(adapter, "string", true)->getClassName()));
EXPECT_EQUAL("search::FilterAttributeIteratorT<search::attribute::SingleEnumSearchContext<char const*, search::attribute::StringSearchContext> >",
- ws.createSearch(adapter, "string", false)->getClassName());
+ normalize_class_name(ws.createSearch(adapter, "string", false)->getClassName()));
EXPECT_TRUE(ws.isWeightedSetTermSearch(adapter, "multi", true));
EXPECT_TRUE(ws.isWeightedSetTermSearch(adapter, "multi", false));