public static CaseInstance createMockCaseInstance(String tenantId) { CaseInstance mock = mock(CaseInstance.class); when(mock.getId()).thenReturn(EXAMPLE_CASE_INSTANCE_ID); when(mock.getBusinessKey()).thenReturn(EXAMPLE_CASE_INSTANCE_BUSINESS_KEY); when(mock.getCaseDefinitionId()).thenReturn(EXAMPLE_CASE_INSTANCE_CASE_DEFINITION_ID); when(mock.getTenantId()).thenReturn(tenantId); when(mock.isActive()).thenReturn(EXAMPLE_CASE_INSTANCE_IS_ACTIVE); when(mock.isCompleted()).thenReturn(EXAMPLE_CASE_INSTANCE_IS_COMPLETED); when(mock.isTerminated()).thenReturn(EXAMPLE_CASE_INSTANCE_IS_TERMINATED); return mock; }
public static CaseInstanceDto fromCaseInstance(CaseInstance instance) { CaseInstanceDto result = new CaseInstanceDto(); result.id = instance.getId(); result.caseDefinitionId = instance.getCaseDefinitionId(); result.businessKey = instance.getBusinessKey(); result.tenantId = instance.getTenantId(); result.active = instance.isActive(); result.completed = instance.isCompleted(); result.terminated = instance.isTerminated(); return result; }
@Deployment(resources = { "org/camunda/bpm/engine/test/cmmn/sentry/SentryEntryCriteriaTest.testShouldNotTriggerCompletionTwice.cmmn", "org/camunda/bpm/engine/test/cmmn/sentry/SentryEntryCriteriaTest.noop.bpmn20.xml" }) public void testShouldNotTriggerCompletionTwice() { // when CaseInstance ci = caseService.createCaseInstanceByKey("case"); // then assertTrue(ci.isCompleted()); }
public static CaseInstanceDto fromCaseInstance(CaseInstance instance) { CaseInstanceDto result = new CaseInstanceDto(); result.id = instance.getId(); result.caseDefinitionId = instance.getCaseDefinitionId(); result.businessKey = instance.getBusinessKey(); result.tenantId = instance.getTenantId(); result.active = instance.isActive(); result.completed = instance.isCompleted(); result.terminated = instance.isTerminated(); return result; }
@Deployment public void testAutoCompleteStage() { // given String caseInstanceId = createCaseInstance().getId(); String humanTask1 = queryCaseExecutionByActivityId("PI_HumanTask_1").getId(); // when complete(humanTask1); // then CaseExecution stage = queryCaseExecutionByActivityId("PI_Stage_1"); assertNull(stage); CaseInstance caseInstance = (CaseInstance) queryCaseExecutionById(caseInstanceId); assertTrue(caseInstance.isCompleted()); }
@Deployment(resources={"org/camunda/bpm/engine/test/api/cmmn/oneCaseTaskCaseWithManualActivation.cmmn"}) public void testDisableShouldCompleteCaseInstance() { // given createCaseInstance(DEFINITION_KEY); String caseTaskId = queryCaseExecutionByActivityId(CASE_TASK_KEY).getId(); // when caseService .withCaseExecution(caseTaskId) .disable(); // then CaseExecution caseTask = queryCaseExecutionByActivityId(CASE_TASK_KEY); // the case instance has been completed CaseInstance superCaseInstance = queryCaseInstanceByKey(DEFINITION_KEY); assertNotNull(superCaseInstance); assertTrue(superCaseInstance.isCompleted()); }
@Deployment(resources={ "org/camunda/bpm/engine/test/api/cmmn/oneCaseTaskCase.cmmn", "org/camunda/bpm/engine/test/api/cmmn/oneTaskCase.cmmn" }) public void testCloseCaseInstanceShouldCompleteCaseTask() { // given createCaseInstance(DEFINITION_KEY); String caseTaskId = queryCaseExecutionByActivityId(CASE_TASK_KEY).getId(); String humanTaskId = queryCaseExecutionByActivityId("PI_HumanTask_1").getId(); caseService .withCaseExecution(humanTaskId) .complete(); CaseInstance subCaseInstance = queryCaseInstanceByKey(DEFINITION_KEY_2); assertTrue(subCaseInstance.isCompleted()); // when caseService .withCaseExecution(subCaseInstance.getId()) .close(); // then CaseExecution caseTask = queryCaseExecutionByActivityId(CASE_TASK_KEY); assertNull(caseTask); CaseInstance superCaseInstance = queryCaseInstanceByKey(DEFINITION_KEY); assertNotNull(superCaseInstance); assertTrue(superCaseInstance.isCompleted()); }
@Deployment(resources = {"org/camunda/bpm/engine/test/cmmn/milestone/MilestoneTest.testWithoutEntryCriterias.cmmn"}) public void testWithoutEntryCriterias() { // given // when String caseInstanceId = caseService .withCaseDefinitionByKey("case") .create() .getId(); // then CaseInstance caseInstance = caseService .createCaseInstanceQuery() .caseInstanceId(caseInstanceId) .singleResult(); assertTrue(caseInstance.isCompleted()); Object occurVariable = caseService.getVariable(caseInstanceId, "occur"); assertNotNull(occurVariable); assertTrue((Boolean) occurVariable); }
@Deployment(resources={"org/camunda/bpm/engine/test/api/cmmn/emptyCasePlanModelCase.cmmn"}) public void testAutoCompletionOfEmptyCase() { // given: // a deployed case definition String caseDefinitionId = repositoryService .createCaseDefinitionQuery() .singleResult() .getId(); // when caseService .withCaseDefinition(caseDefinitionId) .create(); // then CaseInstance caseInstance = caseService .createCaseInstanceQuery() .completed() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); }
@Deployment(resources={ "org/camunda/bpm/engine/test/api/cmmn/oneProcessTaskCase.cmmn", "org/camunda/bpm/engine/test/api/oneTaskProcess.bpmn20.xml" }) public void testCompleteProcessInstanceShouldCompleteProcessTask() { // given createCaseInstance(DEFINITION_KEY); String processTaskId = queryCaseExecutionByActivityId(PROCESS_TASK_KEY).getId(); String taskId = queryTask().getId(); // when taskService.complete(taskId); // then CaseExecution processTask = queryCaseExecutionByActivityId(PROCESS_TASK_KEY); assertNull(processTask); CaseInstance caseInstance = caseService .createCaseInstanceQuery() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); }
@Deployment(resources={"org/camunda/bpm/engine/test/api/cmmn/oneProcessTaskCaseWithManualActivation.cmmn"}) public void testDisableShouldCompleteCaseInstance() { // given createCaseInstance(DEFINITION_KEY); String processTaskId = queryCaseExecutionByActivityId(PROCESS_TASK_KEY).getId(); // when caseService .withCaseExecution(processTaskId) .disable(); // then CaseExecution processTask = queryCaseExecutionByActivityId(PROCESS_TASK_KEY); assertNull(processTask); // the case instance has been completed CaseInstance caseInstance = caseService .createCaseInstanceQuery() .completed() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); }
@Deployment(resources = { "org/camunda/bpm/engine/test/cmmn/processtask/ProcessTaskTest.testNonBlockingProcessTaskAndProcessInstanceCompletesInOneGo.cmmn", "org/camunda/bpm/engine/test/cmmn/processtask/ProcessTaskTest.testProcessInstanceCompletesInOneGo.bpmn20.xml" }) public void testNonBlockingProcessTaskAndProcessInstanceCompletesInOneGo() { // given String caseInstanceId = createCaseInstanceByKey(ONE_PROCESS_TASK_CASE).getId(); // then ProcessInstance processInstance = queryProcessInstance(); assertNull(processInstance); CaseExecution processTask = queryCaseExecutionByActivityId(PROCESS_TASK); assertNull(processTask); CaseInstance caseInstance = caseService .createCaseInstanceQuery() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); // complete //////////////////////////////////////////////////////// close(caseInstanceId); assertCaseEnded(caseInstanceId); }
@Deployment(resources = { "org/camunda/bpm/engine/test/cmmn/processtask/ProcessTaskTest.testProcessInstanceCompletesInOneGo.cmmn", "org/camunda/bpm/engine/test/cmmn/processtask/ProcessTaskTest.testProcessInstanceCompletesInOneGo.bpmn20.xml" }) public void testProcessInstanceCompletesInOneGo() { // given String caseInstanceId = createCaseInstanceByKey(ONE_PROCESS_TASK_CASE).getId(); // then ProcessInstance processInstance = queryProcessInstance(); assertNull(processInstance); CaseExecution processTask = queryCaseExecutionByActivityId(PROCESS_TASK); assertNull(processTask); CaseInstance caseInstance = caseService .createCaseInstanceQuery() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); // complete //////////////////////////////////////////////////////// close(caseInstanceId); assertCaseEnded(caseInstanceId); }
@Deployment(resources = {"org/camunda/bpm/engine/test/cmmn/stage/AutoCompleteTest.testRequiredEnabled.cmmn"}) public void testTerminate() { // given // a deployed case definition String caseInstanceId = createCaseInstanceByKey(CASE_DEFINITION_KEY).getId(); CaseExecutionQuery executionQuery = caseService.createCaseExecutionQuery(); CaseInstanceQuery instanceQuery = caseService.createCaseInstanceQuery().caseInstanceId(caseInstanceId); String humanTask2Id = executionQuery .activityId("PI_HumanTask_2") .singleResult() .getId(); manualStart(humanTask2Id); // when terminate(humanTask2Id); // then CaseInstance caseInstance = instanceQuery.singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); }
@Deployment public void testCasePlanModel() { // given // a deployed process // when String caseInstanceId = createCaseInstanceByKey(CASE_DEFINITION_KEY).getId(); // then CaseInstance caseInstance = caseService .createCaseInstanceQuery() .caseInstanceId(caseInstanceId) .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); // humanTask1 and humanTask2 are not available CaseExecutionQuery query = caseService.createCaseExecutionQuery(); assertNull(query.activityId("PI_HumanTask_1").singleResult()); assertNull(query.activityId("PI_HumanTask_2").singleResult()); }
@Deployment(resources={"org/camunda/bpm/engine/test/api/cmmn/emptyStageCase.cmmn"}) public void testAutoCompletionOfEmptyStage() { // given: // a deployed case definition String caseDefinitionId = repositoryService .createCaseDefinitionQuery() .singleResult() .getId(); caseService .withCaseDefinition(caseDefinitionId) .create(); // then CaseExecution caseExecution = caseService .createCaseExecutionQuery() .activityId("PI_Stage_1") .singleResult(); assertNull(caseExecution); CaseInstance caseInstance = caseService .createCaseInstanceQuery() .completed() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); }
@Deployment public void testExitCriteriaAndRequiredEnabled() { // given String caseInstanceId = createCaseInstanceByKey(CASE_DEFINITION_KEY).getId(); CaseExecutionQuery executionQuery = caseService.createCaseExecutionQuery(); String humanTask1Id = executionQuery .activityId("PI_HumanTask_1") .singleResult() .getId(); CaseExecution humanTask2 = executionQuery .activityId("PI_HumanTask_2") .singleResult(); manualStart(humanTask2.getId()); // when complete(humanTask1Id); // then CaseInstance caseInstance = caseService .createCaseInstanceQuery() .caseInstanceId(caseInstanceId) .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); }
@Deployment public void testAutoCompleteStageWithoutEntryCriteria() { // given VariableMap variables = Variables.createVariables().putValue("manualActivation", false); String caseInstanceId = createCaseInstanceByKey("case", variables).getId(); // then (1) CaseExecutionQuery query = caseService .createCaseExecutionQuery() .activityId("PI_HumanTask_1"); assertEquals(1, query.count()); assertEquals(1, query.active().count()); String activeTaskId = query.singleResult().getId(); // when (2) // completing active task complete(activeTaskId); // then (2) // the stage should be completed CaseExecution stage = queryCaseExecutionByActivityId("PI_Stage_1"); assertNull(stage); CaseInstance caseInstance = (CaseInstance) queryCaseExecutionById(caseInstanceId); assertTrue(caseInstance.isCompleted()); }
@Deployment public void testNested() { // given // a deployed case definition CaseExecutionQuery executionQuery = caseService.createCaseExecutionQuery(); // when String caseInstanceId = createCaseInstanceByKey(CASE_DEFINITION_KEY).getId(); // then CaseInstance caseInstance = caseService .createCaseInstanceQuery() .caseInstanceId(caseInstanceId) .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); // stage, humanTask1, humanTask2, humanTask3 are not available assertNull(executionQuery.activityId("PI_Stage_1").singleResult()); assertNull(executionQuery.activityId("PI_HumanTask_1").singleResult()); assertNull(executionQuery.activityId("PI_HumanTask_2").singleResult()); assertNull(executionQuery.activityId("PI_HumanTask_3").singleResult()); }
@Deployment(resources = { "org/camunda/bpm/engine/test/cmmn/processtask/ProcessTaskTest.testNonBlockingProcessTask.cmmn", "org/camunda/bpm/engine/test/api/oneTaskProcess.bpmn20.xml" }) public void testNonBlockingProcessTask() { // given String caseInstanceId = createCaseInstanceByKey(ONE_PROCESS_TASK_CASE).getId(); // then ProcessInstance processInstance = queryProcessInstance(); assertNotNull(processInstance); Task task = queryTask(); assertNotNull(task); CaseExecution processTask = queryCaseExecutionByActivityId(PROCESS_TASK); assertNull(processTask); CaseInstance caseInstance = caseService .createCaseInstanceQuery() .singleResult(); assertNotNull(caseInstance); assertTrue(caseInstance.isCompleted()); // complete //////////////////////////////////////////////////////// close(caseInstanceId); assertCaseEnded(caseInstanceId); String taskId = queryTask().getId(); taskService.complete(taskId); assertProcessEnded(processInstance.getId()); }