diff options
author | Jon Bratseth <bratseth@gmail.com> | 2021-02-03 14:36:16 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2021-02-03 14:36:16 +0100 |
commit | d9f82731cb7c47162e7a93b6cb6c1990cbb879fb (patch) | |
tree | 574c75377824d86c2e26efcb69a788fa34d89581 /container-search/src/test | |
parent | 2319ebb2fbbc87ac54448ec6a433a0f99aab940c (diff) |
No functional changes
Diffstat (limited to 'container-search/src/test')
-rw-r--r-- | container-search/src/test/java/com/yahoo/search/grouping/GroupingRequestTestCase.java | 4 | ||||
-rw-r--r-- | container-search/src/test/java/com/yahoo/select/SelectTestCase.java | 32 |
2 files changed, 34 insertions, 2 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/grouping/GroupingRequestTestCase.java b/container-search/src/test/java/com/yahoo/search/grouping/GroupingRequestTestCase.java index 244d45f1b29..fb08b39de4d 100644 --- a/container-search/src/test/java/com/yahoo/search/grouping/GroupingRequestTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/grouping/GroupingRequestTestCase.java @@ -124,10 +124,10 @@ public class GroupingRequestTestCase { assertEquals(Collections.emptyList(), query.getSelect().getGrouping()); GroupingRequest foo = GroupingRequest.newInstance(query); - assertEquals(Arrays.asList(foo), query.getSelect().getGrouping()); + assertEquals(List.of(foo), query.getSelect().getGrouping()); GroupingRequest bar = GroupingRequest.newInstance(query); - assertEquals(Arrays.asList(foo, bar), query.getSelect().getGrouping()); + assertEquals(List.of(foo, bar), query.getSelect().getGrouping()); } 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 9bcd3addd92..1ce70feebb4 100644 --- a/container-search/src/test/java/com/yahoo/select/SelectTestCase.java +++ b/container-search/src/test/java/com/yahoo/select/SelectTestCase.java @@ -20,6 +20,12 @@ import com.yahoo.prelude.query.WordItem; import com.yahoo.processing.IllegalInputException; import com.yahoo.search.Query; import com.yahoo.search.grouping.GroupingRequest; +import com.yahoo.search.grouping.request.AllOperation; +import com.yahoo.search.grouping.request.AttributeValue; +import com.yahoo.search.grouping.request.CountAggregator; +import com.yahoo.search.grouping.request.EachOperation; +import com.yahoo.search.grouping.request.MaxAggregator; +import com.yahoo.search.grouping.request.MinAggregator; import com.yahoo.search.query.QueryTree; import com.yahoo.search.query.Select; import com.yahoo.search.query.SelectParser; @@ -768,6 +774,32 @@ public class SelectTestCase { assertEquals(clone.getSelect().getGroupingExpressionString(), query.getSelect().getGroupingExpressionString()); } + @Test + public void testProgrammaticBuilding() { + String expected = + "all(group(myfield) max(10000) each(" + + "output(min(foo), max(bar)) " + + "all(group(foo) max(10000) output(count()))" + + "))"; + Query query = new Query(); + GroupingRequest grouping = GroupingRequest.newInstance(query); + AllOperation root = new AllOperation(); + root.setGroupBy(new AttributeValue("myfield")); + root.setMax(10000); + EachOperation each = new EachOperation(); + each.addOutput(new MinAggregator(new AttributeValue("foo"))); + each.addOutput(new MaxAggregator(new AttributeValue("bar"))); + AllOperation all = new AllOperation(); + all.setGroupBy(new AttributeValue("foo")); + all.setMax(10000); + all.addOutput(new CountAggregator()); + each.addChild(all); + root.addChild(each); + grouping.setRootOperation(root); + + assertEquals(expected, query.getSelect().getGrouping().get(0).toString()); + } + //------------------------------------------------------------------- Assert methods private void assertParse(String where, String expectedQueryTree) { |