use of org.hisp.dhis.jsontree.JsonResponse in project dhis2-core by dhis2.
the class EventVisualizationControllerTest method testPostRepetitionForFilter.
@Test
void testPostRepetitionForFilter() {
// Given
final String dimension = "ou";
final String indexes = "[1,2,3,-2,-1,0]";
final String repetition = "'repetition': {'indexes': " + indexes + "}";
final String body = "{'name': 'Name Test', 'type': 'STACKED_COLUMN', 'program': {'id':'" + mockProgram.getUid() + "'}, 'filters': [{'dimension': '" + dimension + "', " + repetition + "}]}";
// When
final String uid = assertStatus(CREATED, POST("/eventVisualizations/", body));
// Then
final String getParams = "?fields=:all,filters[:all,items,repetitions]";
final JsonResponse response = GET("/eventVisualizations/" + uid + getParams).content();
final Map<String, JsonNode> nodeMap = (Map<String, JsonNode>) response.node().value();
assertThat(nodeMap.get("repetitions").toString(), containsString("FILTER"));
assertThat(nodeMap.get("repetitions").toString(), containsString(indexes));
assertThat(nodeMap.get("repetitions").toString(), containsString(dimension));
assertThat(nodeMap.get("filters").toString(), containsString(indexes));
assertThat(nodeMap.get("columns").toString(), not(containsString(indexes)));
assertThat(nodeMap.get("rows").toString(), not(containsString(indexes)));
}
use of org.hisp.dhis.jsontree.JsonResponse in project dhis2-core by dhis2.
the class EventVisualizationControllerTest method testPostForMultiEventDates.
@Test
void testPostForMultiEventDates() {
// Given
final String eventDateDimension = "eventDate";
final String incidentDateDimension = "incidentDate";
final String eventDate = "2021-07-21_2021-08-01";
final String incidentDate = "2021-07-21_2021-08-01";
final String eventDateBody = "{'dimension': '" + eventDateDimension + "', 'items': [{'id': '" + eventDate + "'}]}";
final String incidentDateBody = "{'dimension': '" + incidentDateDimension + "', 'items': [{'id': '" + incidentDate + "'}]}";
final String body = "{'name': 'Name Test', 'type': 'STACKED_COLUMN', 'program': {'id':'" + mockProgram.getUid() + "'}, 'rows': [" + eventDateBody + "," + incidentDateBody + "]}";
// When
final String uid = assertStatus(CREATED, POST("/eventVisualizations/", body));
// Then
final JsonResponse response = GET("/eventVisualizations/" + uid).content();
final Map<String, JsonNode> nodeMap = (Map<String, JsonNode>) response.node().value();
assertThat(nodeMap.get("simpleDimensions").toString(), containsString("ROW"));
assertThat(nodeMap.get("simpleDimensions").toString(), containsString(eventDate));
assertThat(nodeMap.get("simpleDimensions").toString(), containsString(incidentDate));
assertThat(nodeMap.get("rows").toString(), containsString(eventDateDimension));
assertThat(nodeMap.get("rows").toString(), containsString(incidentDateDimension));
assertThat(nodeMap.get("columns").toString(), not(containsString(eventDateDimension)));
assertThat(nodeMap.get("columns").toString(), not(containsString(incidentDateDimension)));
assertThat(nodeMap.get("filters").toString(), not(containsString(eventDateDimension)));
assertThat(nodeMap.get("filters").toString(), not(containsString(incidentDateDimension)));
}
use of org.hisp.dhis.jsontree.JsonResponse in project dhis2-core by dhis2.
the class FollowupAnalysisControllerTest method assertFollowupValues.
private void assertFollowupValues(HttpResponse response, String... expectedComments) {
JsonResponse body = response.content();
JsonList<JsonFollowupValue> values = body.getList("followupValues", JsonFollowupValue.class);
assertEquals(expectedComments.length, values.size());
assertEquals(Arrays.stream(expectedComments).collect(toSet()), values.stream().map(JsonFollowupValue::getComment).collect(toSet()));
JsonObject metadata = body.getObject("metadata");
assertTrue(metadata.exists());
assertEquals(asList("de", "coc", "ou", "startDate", "endDate", "maxResults"), metadata.names());
}
use of org.hisp.dhis.jsontree.JsonResponse in project dhis2-core by dhis2.
the class EventChartControllerTest method testThatGetEventChartsDoesNotContainNewEventVisualizations.
@Test
void testThatGetEventChartsDoesNotContainNewEventVisualizations() {
// Given
final String body = "{'name': 'Name Test', 'type':'GAUGE', 'program':{'id':'" + mockProgram.getUid() + "'}}";
// When
final String uid = assertStatus(CREATED, POST("/eventVisualizations/", body));
// Then
final JsonResponse response = GET("/eventCharts/" + uid).content();
final Map<String, JsonNode> nodeMap = (Map<String, JsonNode>) response.node().value();
assertThat(nodeMap.values(), is(empty()));
}
use of org.hisp.dhis.jsontree.JsonResponse in project dhis2-core by dhis2.
the class EventReportControllerTest method testPostForMultiEventDates.
@Test
void testPostForMultiEventDates() {
// Given
final String eventDateDimension = "eventDate";
final String incidentDateDimension = "incidentDate";
final String eventDate = "2021-07-21_2021-08-01";
final String incidentDate = "2021-07-21_2021-08-01";
final String eventDateBody = "{'dimension': '" + eventDateDimension + "', 'items': [{'id': '" + eventDate + "'}]}";
final String incidentDateBody = "{'dimension': '" + incidentDateDimension + "', 'items': [{'id': '" + incidentDate + "'}]}";
final String body = "{'name': 'Name Test', 'type':'LINE_LIST', 'program':{'id':'" + mockProgram.getUid() + "'}, 'rows': [" + eventDateBody + "," + incidentDateBody + "]}";
// When
final String uid = assertStatus(CREATED, POST("/eventReports/", body));
// Then
final JsonResponse response = GET("/eventReports/" + uid).content();
final Map<String, JsonNode> nodeMap = (Map<String, JsonNode>) response.node().value();
assertThat(nodeMap.get("simpleDimensions").toString(), containsString("ROW"));
assertThat(nodeMap.get("simpleDimensions").toString(), containsString(eventDate));
assertThat(nodeMap.get("simpleDimensions").toString(), containsString(incidentDate));
assertThat(nodeMap.get("rows").toString(), containsString(eventDateDimension));
assertThat(nodeMap.get("rows").toString(), containsString(incidentDateDimension));
assertThat(nodeMap.get("columns").toString(), not(containsString(eventDateDimension)));
assertThat(nodeMap.get("columns").toString(), not(containsString(incidentDateDimension)));
assertThat(nodeMap.get("filters").toString(), not(containsString(eventDateDimension)));
assertThat(nodeMap.get("filters").toString(), not(containsString(incidentDateDimension)));
}
Aggregations