@Test public void testQueryByTwoStatesAsPost() { String message = "expected exception"; doThrow(new BadUserRequestException(message)).when(mockedQuery).completed(); Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("active", true); parameters.put("completed", true); given() .contentType(POST_JSON_CONTENT_TYPE) .body(parameters) .then() .statusCode(Status.BAD_REQUEST.getStatusCode()) .contentType(ContentType.JSON) .body("type", equalTo(BadUserRequestException.class.getSimpleName())) .body("message", equalTo(message)) .when() .post(HISTORIC_PROCESS_INSTANCE_RESOURCE_URL); verify(mockedQuery).active(); }
@Test public void testQueryByCompletedAsPost() { Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("completed", true); given() .contentType(POST_JSON_CONTENT_TYPE) .body(parameters) .then() .expect() .statusCode(Status.OK.getStatusCode()) .when() .post(HISTORIC_PROCESS_INSTANCE_RESOURCE_URL); verify(mockedQuery).completed(); }
@Test public void testQueryByTwoStates() { String message = "expected exception"; doThrow(new BadUserRequestException(message)).when(mockedQuery).completed(); given() .queryParam("active", true) .queryParam("completed", true) .then() .statusCode(Status.BAD_REQUEST.getStatusCode()) .contentType(ContentType.JSON) .body("type", equalTo(BadUserRequestException.class.getSimpleName())) .body("message", equalTo(message)) .when() .get(HISTORIC_PROCESS_INSTANCE_RESOURCE_URL); verify(mockedQuery).active(); }
@Test public void testQueryByCompleted() { given() .queryParam("completed", true) .then() .expect() .statusCode(Status.OK.getStatusCode()) .when() .get(HISTORIC_PROCESS_INSTANCE_RESOURCE_URL); verify(mockedQuery).completed(); }
@Test @Deployment(resources = {"org/camunda/bpm/engine/test/history/HistoricProcessInstanceStateTest.testWithCallActivity.bpmn"}) public void testWithCallActivity() { processEngineRule.getRuntimeService().startProcessInstanceByKey("Main_Process"); assertThat(processEngineRule.getRuntimeService().createProcessInstanceQuery().active().list().size(), is(0)); HistoricProcessInstance entity1 = processEngineRule.getHistoryService().createHistoricProcessInstanceQuery() .processDefinitionKey("Main_Process").singleResult(); HistoricProcessInstance entity2 = processEngineRule.getHistoryService().createHistoricProcessInstanceQuery() .processDefinitionKey("Sub_Process").singleResult(); assertThat(entity1, is(notNullValue())); assertThat(entity2, is(notNullValue())); assertThat(entity1.getState(), is(HistoricProcessInstance.STATE_COMPLETED)); assertEquals(1, processEngineRule.getHistoryService().createHistoricProcessInstanceQuery().completed().count()); assertThat(entity2.getState(), is(HistoricProcessInstance.STATE_INTERNALLY_TERMINATED)); assertEquals(1, processEngineRule.getHistoryService().createHistoricProcessInstanceQuery().internallyTerminated().count()); }
@Test public void testErrorEndEvent() { BpmnModelInstance process1 = Bpmn.createExecutableProcess(PROCESS_ID) .startEvent() .endEvent() .error("1") .done(); ProcessDefinition processDefinition = processEngineTestRule.deployAndGetDefinition(process1); processEngineRule.getRuntimeService().startProcessInstanceById(processDefinition.getId()); HistoricProcessInstance entity = getHistoricProcessInstanceWithAssertion(processDefinition); assertThat(entity.getState(), is(HistoricProcessInstance.STATE_COMPLETED)); assertEquals(1, processEngineRule.getHistoryService().createHistoricProcessInstanceQuery().completed().count()); }
@Test @Deployment(resources = {"org/camunda/bpm/engine/test/history/HistoricProcessInstanceStateTest.testWithCallActivity.bpmn"}) public void testWithCallActivity() { processEngineRule.getRuntimeService().startProcessInstanceByKey("Main_Process"); assertThat(processEngineRule.getRuntimeService().createProcessInstanceQuery().active().list().size(), is(0)); HistoricProcessInstance entity1 = processEngineRule.getHistoryService().createHistoricProcessInstanceQuery() .processDefinitionKey("Main_Process").singleResult(); HistoricProcessInstance entity2 = processEngineRule.getHistoryService().createHistoricProcessInstanceQuery() .processDefinitionKey("Sub_Process").singleResult(); assertThat(entity1, is(notNullValue())); assertThat(entity2, is(notNullValue())); assertThat(entity1.getState(), is(HistoricProcessInstance.STATE_COMPLETED)); assertEquals(1, processEngineRule.getHistoryService().createHistoricProcessInstanceQuery().completed().count()); assertThat(entity2.getState(), is(HistoricProcessInstance.STATE_INTERNALLY_TERMINATED)); assertEquals(1, processEngineRule.getHistoryService().createHistoricProcessInstanceQuery().internallyTerminated().count()); }
@Test public void testErrorEndEvent() { BpmnModelInstance process1 = Bpmn.createExecutableProcess(PROCESS_ID) .startEvent() .endEvent() .error("1") .done(); ProcessDefinition processDefinition = processEngineTestRule.deployAndGetDefinition(process1); processEngineRule.getRuntimeService().startProcessInstanceById(processDefinition.getId()); HistoricProcessInstance entity = getHistoricProcessInstanceWithAssertion(processDefinition); assertThat(entity.getState(), is(HistoricProcessInstance.STATE_COMPLETED)); assertEquals(1, processEngineRule.getHistoryService().createHistoricProcessInstanceQuery().completed().count()); }