@Test public void testGetRequestsJoin() throws Exception { List<RequestData> datas = dao.getRequests(new Query().properties("path", "resource") .filter("path","/foo", Comparison.EQ). group("path", "resource") .sort("resource", SortOrder.ASC)); assertEquals(3, datas.size()); assertEquals("stuff", datas.get(0).getResources().get(0)); assertEquals("things", datas.get(1).getResources().get(0)); assertEquals("widgets", datas.get(2).getResources().get(0)); } @Test
@Test public void testGetRequestsJoinIN() throws Exception { List<String> resources = Arrays.asList("widgets", "things"); List<RequestData> datas = dao.getRequests(new Query().properties("resource") .aggregate("count()").filter("resource", resources, Comparison.IN) .group("resource").sort("resource", SortOrder.ASC)); assertEquals(2, datas.size()); assertEquals("things", datas.get(0).getResources().get(0)); assertEquals("widgets", datas.get(1).getResources().get(0)); }
@Test public void testGetRequestsJoinVisitor() throws Exception { final List<RequestData> datas = new ArrayList(); final List<Object> aggs = new ArrayList(); RequestDataVisitor v = new RequestDataVisitor() { public void visit(RequestData data, Object... aggregates) { datas.add(data); //aggs.addAll(Arrays.asList(aggregates)); } }; dao.getRequests(new Query().properties("path", "resource").filter("path","/foo", Comparison.EQ). group("path", "resource").sort("resource", SortOrder.ASC), v); assertEquals(3, datas.size()); assertEquals(1, datas.get(0).getResources().size()); assertEquals("stuff", datas.get(0).getResources().get(0)); assertEquals(1, datas.get(1).getResources().size()); assertEquals("things", datas.get(1).getResources().get(0)); assertEquals(1, datas.get(2).getResources().size()); assertEquals("widgets", datas.get(2).getResources().get(0)); }
.group("service", "operation").sort("count()", SortOrder.DESC), v);
@Test public void testGetRequestsSorted() throws Exception { assertCoveredInOrder(dao.getRequests(new Query().filter("id", 11l, Comparison.LT) .sort("path", SortOrder.ASC)), 8, 5, 4, 9, 1, 7, 6, 10, 3, 2); }
@Test public void testGetRequestsPaged() throws Exception { List<RequestData> datas = dao.getRequests( new Query().page(5l, 2l).sort("startTime", SortOrder.ASC)); assertCoveredInOrder(datas, 6, 7); }
@Test public void testGetRequestsPaged() throws Exception { List<RequestData> datas = dao.getRequests(new Query().page(5l, 2l).sort("startTime", SortOrder.ASC)); assertCoveredInOrder(datas, 6, 7); }
@Test public void testGetRequestsSorted() throws Exception { assertCoveredInOrder( dao.getRequests( new Query().filter("id", 11l, Comparison.LT).sort("path", SortOrder.ASC)), 8, 5, 4, 9, 1, 7, 6, 10, 3, 2); }
@Test public void testGetRequestsBetween2() throws Exception { //test that the query is inclusive, and test sorting List<RequestData> datas = dao.getRequests(new Query().between( toDate("2010-07-23T15:56:44"), toDate("2010-07-23T16:16:44")) .sort("startTime", SortOrder.ASC)); assertCoveredInOrder(datas, 4, 5, 6); }
@Test public void testGetRequestsBetween2() throws Exception { // test that the query is inclusive, and test sorting List<RequestData> datas = dao.getRequests( new Query() .between( toDate("2010-07-23T15:56:44"), toDate("2010-07-23T16:16:44")) .sort("startTime", SortOrder.ASC)); assertCoveredInOrder(datas, 4, 5, 6); }