From 8a32b84caaa9219a67210c389fd643154ef10ec6 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Mon, 26 Feb 2024 14:27:27 +0100 Subject: Resolve alias references --- .../query/properties/RankProfileInputProperties.java | 2 +- .../searchers/ValidateNearestNeighborTestCase.java | 18 ++++++++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) (limited to 'container-search/src') diff --git a/container-search/src/main/java/com/yahoo/search/query/properties/RankProfileInputProperties.java b/container-search/src/main/java/com/yahoo/search/query/properties/RankProfileInputProperties.java index 537ffd05463..3ac4178be5f 100644 --- a/container-search/src/main/java/com/yahoo/search/query/properties/RankProfileInputProperties.java +++ b/container-search/src/main/java/com/yahoo/search/query/properties/RankProfileInputProperties.java @@ -48,7 +48,7 @@ public class RankProfileInputProperties extends Properties { value, query.getModel().getLanguage(), context, - this); + query.properties()); } } catch (IllegalArgumentException e) { diff --git a/container-search/src/test/java/com/yahoo/search/searchers/ValidateNearestNeighborTestCase.java b/container-search/src/test/java/com/yahoo/search/searchers/ValidateNearestNeighborTestCase.java index 8e7c7276de1..7bbc1801204 100644 --- a/container-search/src/test/java/com/yahoo/search/searchers/ValidateNearestNeighborTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/searchers/ValidateNearestNeighborTestCase.java @@ -223,19 +223,33 @@ public class ValidateNearestNeighborTestCase { @Test void testWithQueryProfileArgument() { + testWithQueryProfileArgument("foo"); + } + + @Test + void testWithQueryProfileArgumentFromBuiltInProperties() { + testWithQueryProfileArgument("model.queryTree"); + } + + @Test + void testWithQueryProfileArgumentFromBuiltInPropertyAlias() { + testWithQueryProfileArgument("query"); + } + + private void testWithQueryProfileArgument(String argument) { var embedder = new MockEmbedder("test text", Language.UNKNOWN, Tensor.from("tensor(x[3]):[1.0, 2.0, 3.0]")); var registry = new QueryProfileRegistry(); var profile = new QueryProfile("test"); - profile.set("ranking.features.query(qvector)", "embed(@foo)", registry); + profile.set("ranking.features.query(qvector)", "embed(@" + argument + ")", registry); registry.register(profile); var queryString = makeQuery("fvector", "qvector"); var query = new Query.Builder() .setSchemaInfo(createSchemaInfo()) .setQueryProfile(registry.compile().findQueryProfile("test")) .setEmbedder(embedder) - .setRequestMap(Map.of("foo", "test text")) + .setRequestMap(Map.of(argument, "test text")) .build(); setYqlQuery(query, queryString); var result = doSearch(searcher, query); -- cgit v1.2.3