Search in sources :

Example 1 with Order

use of io.gravitee.rest.api.model.analytics.query.GroupByQuery.Order in project gravitee-management-rest-api by gravitee-io.

the class ApplicationAnalyticsResourceTest method shouldGetGroupByAnalytics.

@Test
public void shouldGetGroupByAnalytics() {
    final Response response = target(APPLICATION).path("analytics").queryParam("from", 0).queryParam("to", 100).queryParam("interval", 10_000).queryParam("query", APPLICATION).queryParam("field", APPLICATION).queryParam("type", "GROUP_BY").queryParam("ranges", "10:20").queryParam("order", "orderType:orderField").request().get();
    assertEquals(HttpStatusCode.OK_200, response.getStatus());
    ArgumentCaptor<GroupByQuery> queryCaptor = ArgumentCaptor.forClass(GroupByQuery.class);
    Mockito.verify(analyticsService).execute(queryCaptor.capture());
    final GroupByQuery query = queryCaptor.getValue();
    assertEquals(0, query.getFrom());
    assertEquals(100, query.getTo());
    assertEquals(10_000, query.getInterval());
    assertEquals(APPLICATION, query.getQuery());
    assertEquals(APPLICATION, query.getField());
    assertEquals(ANALYTICS_ROOT_FIELD, query.getRootField());
    assertEquals(APPLICATION, query.getRootIdentifier());
    Order order = query.getOrder();
    assertNotNull(order);
    assertEquals("orderType", order.getType());
    assertEquals("orderField", order.getField());
    assertTrue(order.isOrder());
    Map<Double, Double> groups = query.getGroups();
    assertNotNull(groups);
    assertEquals(1, groups.size());
    Double upperRange = groups.get(Double.valueOf(10));
    assertNotNull(upperRange);
    assertEquals(0, upperRange.compareTo(Double.valueOf(20)));
}
Also used : Response(javax.ws.rs.core.Response) Order(io.gravitee.rest.api.model.analytics.query.GroupByQuery.Order) GroupByQuery(io.gravitee.rest.api.model.analytics.query.GroupByQuery) Test(org.junit.Test)

Aggregations

GroupByQuery (io.gravitee.rest.api.model.analytics.query.GroupByQuery)1 Order (io.gravitee.rest.api.model.analytics.query.GroupByQuery.Order)1 Response (javax.ws.rs.core.Response)1 Test (org.junit.Test)1