diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2020-03-11 14:12:24 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2020-03-11 14:12:24 +0100 |
commit | 9066658d74a995ae960b0bee919f0a698bb720b8 (patch) | |
tree | 7a828ca0fc85579c3922f76636c6f58a68701677 /container-search/src/test/java | |
parent | 3da641f5e5295f0f67ebf062618464327c2d7f40 (diff) |
Validate before prepare to avoid depending on the properties API
Diffstat (limited to 'container-search/src/test/java')
-rw-r--r-- | container-search/src/test/java/com/yahoo/search/searchers/ValidateNearestNeighborTestCase.java | 19 |
1 files changed, 5 insertions, 14 deletions
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 0abb8d281b4..2c849a9b52c 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 @@ -149,7 +149,7 @@ public class ValidateNearestNeighborTestCase { String q = "select * from sources * where nearestNeighbor(dvector,qvector);"; Tensor t = makeTensor(tt_dense_dvector_3); Result r = doSearch(searcher, q, t); - assertErrMsg(desc("dvector", "qvector", 0, "has invalid targetNumHits"), r); + assertErrMsg(desc("dvector", "qvector", 0, "has invalid targetNumHits 0: Must be >= 1"), r); } @Test @@ -157,16 +157,7 @@ public class ValidateNearestNeighborTestCase { String q = makeQuery("dvector", "foo"); Tensor t = makeTensor(tt_dense_dvector_3); Result r = doSearch(searcher, q, t); - assertErrMsg(desc("dvector", "foo", 1, "query tensor not found"), r); - } - - @Test - public void testQueryTensorWrongType() { - String q = makeQuery("dvector", "qvector"); - Result r = doSearch(searcher, q, "tensor string"); - assertErrMsg(desc("dvector", "qvector", 1, "expected a query tensor but got class java.lang.String"), r); - r = doSearch(searcher, q, null); - assertErrMsg(desc("dvector", "qvector", 1, "expected a query tensor but got null"), r); + assertErrMsg(desc("dvector", "foo", 1, "requires a tensor rank feature query(foo) but this is not present"), r); } @Test @@ -174,7 +165,7 @@ public class ValidateNearestNeighborTestCase { String q = makeQuery("dvector", "qvector"); Tensor t = makeTensor(tt_dense_dvector_2, 2); Result r = doSearch(searcher, q, t); - assertErrMsg(desc("dvector", "qvector", 1, "field type tensor(x[3]) does not match query tensor type tensor(x[2])"), r); + assertErrMsg(desc("dvector", "qvector", 1, "field type tensor(x[3]) does not match query type tensor(x[2])"), r); } @Test @@ -209,11 +200,11 @@ public class ValidateNearestNeighborTestCase { assertErrMsg(desc("matrix", "qvector", 1, "tensor type tensor(x[3],y[1]) is not a dense vector"), r); } - private static Result doSearch(ValidateNearestNeighborSearcher searcher, String yqlQuery, Object qTensor) { + private static Result doSearch(ValidateNearestNeighborSearcher searcher, String yqlQuery, Tensor qTensor) { QueryTree queryTree = new YqlParser(new ParserEnvironment()).parse(new Parsable().setQuery(yqlQuery)); Query query = new Query(); query.getModel().getQueryTree().setRoot(queryTree.getRoot()); - query.getRanking().getProperties().put("qvector", qTensor); + query.getRanking().getFeatures().put("query(qvector)", qTensor); SearchDefinition searchDefinition = new SearchDefinition("document"); IndexFacts indexFacts = new IndexFacts(new IndexModel(searchDefinition)); Execution.Context context = new Execution.Context(null, indexFacts, null, new RendererRegistry(MoreExecutors.directExecutor()), new SimpleLinguistics()); |