@Test public void testQueryByProcessDefinitionKeyAsPost() { String processDefinitionKey = "aProcDefKey"; Map<String, Object> params = new HashMap<String, Object>(); params.put("processDefinitionKey", processDefinitionKey); given() .contentType(POST_JSON_CONTENT_TYPE) .body(params) .then().expect().statusCode(Status.OK.getStatusCode()) .when().post(HISTORIC_TASK_INSTANCE_RESOURCE_URL); verify(mockedQuery).processDefinitionKey(processDefinitionKey); }
@Test public void testQueryByProcessDefinitionKey() { String processDefinitionKey = "aProcDefKey"; given() .queryParam("processDefinitionKey", processDefinitionKey) .then().expect().statusCode(Status.OK.getStatusCode()) .when().get(HISTORIC_TASK_INSTANCE_RESOURCE_URL); verify(mockedQuery).processDefinitionKey(processDefinitionKey); }
@Test public void testHistoricTaskInstanceDurationReportResults() { startAndCompleteProcessInstance(PROCESS_DEFINITION_KEY, 2016, 7, 14, 11, 43); startAndCompleteProcessInstance(PROCESS_DEFINITION_KEY, 2016, 7, 14, 11, 43); DurationReportResult taskReportResult = historyService .createHistoricTaskInstanceReport() .duration(PeriodUnit.MONTH).get(0); List<HistoricTaskInstance> historicTaskInstances = historyService .createHistoricTaskInstanceQuery() .processDefinitionKey(PROCESS_DEFINITION_KEY) .list(); long min = 0; long max = 0; long sum = 0; for (int i = 0; i < historicTaskInstances.size(); i++) { HistoricTaskInstance historicProcessInstance = historicTaskInstances.get(i); Long duration = historicProcessInstance.getDurationInMillis(); sum = sum + duration; max = i > 0 ? Math.max(max, duration) : duration; min = i > 0 ? Math.min(min, duration) : duration; } long avg = sum / historicTaskInstances.size(); assertEquals("maximum", max, taskReportResult.getMaximum()); assertEquals("minimum", min, taskReportResult.getMinimum()); assertEquals("average", avg, taskReportResult.getAverage(), 0); }
query.processDefinitionKey(processDefinitionKey);
query.processDefinitionKey(processDefinitionKey);
assertEquals(1, historyService.createHistoricTaskInstanceQuery().processDefinitionKey("HistoricTaskQueryTest").count()); assertEquals(0, historyService.createHistoricTaskInstanceQuery().processDefinitionKey("unexistingdefinitionkey").count());
@Test public void testHistoricTaskInstanceDurationReportResults() { startAndCompleteProcessInstance(PROCESS_DEFINITION_KEY, 2016, 7, 14, 11, 43); startAndCompleteProcessInstance(PROCESS_DEFINITION_KEY, 2016, 7, 14, 11, 43); DurationReportResult taskReportResult = historyService .createHistoricTaskInstanceReport() .duration(PeriodUnit.MONTH).get(0); List<HistoricTaskInstance> historicTaskInstances = historyService .createHistoricTaskInstanceQuery() .processDefinitionKey(PROCESS_DEFINITION_KEY) .list(); long min = 0; long max = 0; long sum = 0; for (int i = 0; i < historicTaskInstances.size(); i++) { HistoricTaskInstance historicProcessInstance = historicTaskInstances.get(i); Long duration = historicProcessInstance.getDurationInMillis(); sum = sum + duration; max = i > 0 ? Math.max(max, duration) : duration; min = i > 0 ? Math.min(min, duration) : duration; } long avg = sum / historicTaskInstances.size(); assertEquals("maximum", max, taskReportResult.getMaximum()); assertEquals("minimum", min, taskReportResult.getMinimum()); assertEquals("average", avg, taskReportResult.getAverage(), 0); }
query.processDefinitionKey(processDefinitionKey);
assertEquals(1, historyService.createHistoricTaskInstanceQuery().processDefinitionKey("HistoricTaskQueryTest").count()); assertEquals(0, historyService.createHistoricTaskInstanceQuery().processDefinitionKey("unexistingdefinitionkey").count());