diff options
author | Arne Juul <arnej@verizonmedia.com> | 2020-06-19 10:02:54 +0000 |
---|---|---|
committer | Arne Juul <arnej@verizonmedia.com> | 2020-06-19 10:02:54 +0000 |
commit | ede285634d82b6e4f4c39158863408d8ffd81377 (patch) | |
tree | fc6a5f6ec0497f0ffc8561373c42512e372f1712 | |
parent | ae1297268fa447f7fb7f2f548d4f32c5327ec187 (diff) |
extend unit test and fix bug found by it
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/query/SelectParser.java | 2 | ||||
-rw-r--r-- | container-search/src/test/java/com/yahoo/select/SelectTestCase.java | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/query/SelectParser.java b/container-search/src/main/java/com/yahoo/search/query/SelectParser.java index 42e1bf46902..9910eb9532d 100644 --- a/container-search/src/main/java/com/yahoo/search/query/SelectParser.java +++ b/container-search/src/main/java/com/yahoo/search/query/SelectParser.java @@ -415,7 +415,7 @@ public class SelectParser implements Parser { HashMap<Integer, Inspector> children = childMap(value); Preconditions.checkArgument(children.size() == 2, "Expected 2 arguments, got %s.", children.size()); String field = children.get(0).asString(); - String property = children.get(0).asString(); + String property = children.get(1).asString(); NearestNeighborItem item = new NearestNeighborItem(field, property); Inspector annotations = getAnnotations(value); if (annotations != null){ diff --git a/container-search/src/test/java/com/yahoo/select/SelectTestCase.java b/container-search/src/test/java/com/yahoo/select/SelectTestCase.java index d2896aca870..4691ef42e55 100644 --- a/container-search/src/test/java/com/yahoo/select/SelectTestCase.java +++ b/container-search/src/test/java/com/yahoo/select/SelectTestCase.java @@ -522,6 +522,15 @@ public class SelectTestCase { } @Test + public void testNearestNeighbor() { + assertParse("{ \"nearestNeighbor\": [ \"f1field\", \"q2prop\" ] }", + "NEAREST_NEIGHBOR {field=f1field,queryTensorName=q2prop,hnsw.exploreAdditionalHits=0,approximate=true,targetHits=0}"); + + assertParse("{ \"nearestNeighbor\": { \"children\" : [ \"f3field\", \"q4prop\" ], \"attributes\" : {\"targetHits\": 37} }}", + "NEAREST_NEIGHBOR {field=f3field,queryTensorName=q4prop,hnsw.exploreAdditionalHits=0,approximate=true,targetHits=37}"); + } + + @Test public void testWeakAnd() { assertParse("{ \"weakAnd\": [{ \"contains\": [\"a\", \"A\"] }, { \"contains\": [\"b\", \"B\"] } ] }", "WAND(100) a:A b:B"); |