Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Test
- public void testGroupByWithLookupDimensionSpec()
- {
- Map<String, String> map = new HashMap<>();
- map.put("automotive", "health105");
- map.put("business", "health20");
- map.put("entertainment", "travel47");
- map.put("health", "health55");
- map.put("mezzanine", "health09");
- map.put("news", "health0000");
- map.put("premium", "health999");
- map.put("technology", "travel123");
- map.put("travel", "travel555");
- GroupByQuery innerQuery = GroupByQuery
- .builder()
- .setDataSource(QueryRunnerTestHelper.dataSource)
- .setQuerySegmentSpec(QueryRunnerTestHelper.firstToThird)
- .setDimensions(
- Lists.<DimensionSpec>newArrayList(
- new LookupDimensionSpec(
- "quality",
- "alias",
- new MapLookupExtractor(map, false),
- false,
- null,
- null,
- null,
- true
- )
- )
- )
- .setAggregatorSpecs(
- Arrays.<AggregatorFactory>asList(
- QueryRunnerTestHelper.rowsCount
- )
- )
- .setGranularity(QueryRunnerTestHelper.allGran)
- .build();
- GroupByQuery outerQuery = GroupByQuery
- .builder()
- .setDataSource(new QueryDataSource(innerQuery))
- .setQuerySegmentSpec(QueryRunnerTestHelper.firstToThird)
- .setDimensions(
- Lists.<DimensionSpec>newArrayList(
- new DefaultDimensionSpec("alias", "alias")
- )
- )
- .setAggregatorSpecs(
- Arrays.<AggregatorFactory>asList(
- new LongSumAggregatorFactory(
- QueryRunnerTestHelper.rowsCount.getName(),
- QueryRunnerTestHelper.rowsCount.getName()
- )
- )
- )
- .setGranularity(QueryRunnerTestHelper.allGran)
- .build();
- List<Row> expectedResults = Arrays.asList(
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "health0000", "rows", 2L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "health09", "rows", 6L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "health105", "rows", 2L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "health20", "rows", 2L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "health55", "rows", 2L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "health999", "rows", 6L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "travel123", "rows", 2L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "travel47", "rows", 2L),
- GroupByQueryRunnerTestHelper.createExpectedRow("2011-04-01", "alias", "travel555", "rows", 2L)
- );
- Iterable<Row> results = GroupByQueryRunnerTestHelper.runQuery(factory, runner, outerQuery);
- TestHelper.assertExpectedObjects(expectedResults, results, "");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement