@Test public void testQueryByInvalidExecutionId() { JobQuery query = managementService.createJobQuery().executionId("invalid"); verifyQueryResults(query, 0); try { managementService.createJobQuery().executionId(null).list(); fail(); } catch (ProcessEngineException e) {} }
private void verifyParameterQueryInvocations() { Map<String, Object> parameters = getCompleteParameters(); verify(mockQuery).jobId((String) parameters.get("jobId")); verify(mockQuery).processInstanceId((String) parameters.get("processInstanceId")); verify(mockQuery).processDefinitionId((String) parameters.get("processDefinitionId")); verify(mockQuery).processDefinitionKey((String) parameters.get("processDefinitionKey")); verify(mockQuery).executionId((String) parameters.get("executionId")); verify(mockQuery).activityId((String) parameters.get("activityId")); verify(mockQuery).withRetriesLeft(); verify(mockQuery).executable(); verify(mockQuery).timers(); verify(mockQuery).withException(); verify(mockQuery).exceptionMessage((String) parameters.get("exceptionMessage")); verify(mockQuery).noRetriesLeft(); verify(mockQuery).active(); verify(mockQuery).suspended(); verify(mockQuery).priorityLowerThanOrEquals(JOB_QUERY_MAX_PRIORITY); verify(mockQuery).priorityHigherThanOrEquals(JOB_QUERY_MIN_PRIORITY); verify(mockQuery).jobDefinitionId(MockProvider.EXAMPLE_JOB_DEFINITION_ID); }
query.executionId(executionId);
query.executionId(executionId);
@Test public void testQueryByExecutionId() { Job job = managementService.createJobQuery().processInstanceId(processInstanceIdOne).singleResult(); JobQuery query = managementService.createJobQuery().executionId(job.getExecutionId()); assertEquals(query.singleResult().getId(), job.getId()); verifyQueryResults(query, 1); }
@Deployment(resources = { "org/camunda/bpm/engine/test/bpmn/job/intermediateSignalAsyncProcess.bpmn20.xml", "org/camunda/bpm/engine/test/bpmn/job/intermediateSignalCatchJobPrioProcess.bpmn20.xml"}) public void testAsyncSignalThrowingEventActivityPriority() { // given a receiving process instance with two subscriptions runtimeService.startProcessInstanceByKey("intermediateSignalCatchJobPrioProcess"); // and a process instance that executes an async signal throwing event runtimeService.startProcessInstanceByKey("intermediateSignalJobPrioProcess"); Execution signal1Execution = runtimeService.createExecutionQuery().activityId("signal1").singleResult(); Job signal1Job = managementService.createJobQuery().executionId(signal1Execution.getId()).singleResult(); Execution signal2Execution = runtimeService.createExecutionQuery().activityId("signal2").singleResult(); Job signal2Job = managementService.createJobQuery().executionId(signal2Execution.getId()).singleResult(); // then the jobs have the priority as specified for the receiving events, not the throwing assertEquals(8, signal1Job.getPriority()); assertEquals(4, signal2Job.getPriority()); }
@Test public void testVariableAtConcurrentExecutionInTransition() { // given ProcessDefinition sourceProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_USER_TASK_PROCESS); ProcessDefinition targetProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_USER_TASK_PROCESS); MigrationPlan migrationPlan = rule.getRuntimeService() .createMigrationPlan(sourceProcessDefinition.getId(), targetProcessDefinition.getId()) .mapEqualActivities() .build(); ProcessInstance processInstance = rule.getRuntimeService() .createProcessInstanceById(sourceProcessDefinition.getId()) .startBeforeActivity("userTask") .startBeforeActivity("userTask") .execute(); Execution concurrentExecution = runtimeService.createExecutionQuery().activityId("userTask").list().get(0); Job jobForExecution = rule.getManagementService().createJobQuery().executionId(concurrentExecution.getId()).singleResult(); runtimeService.setVariableLocal(concurrentExecution.getId(), "var", "value"); // when testHelper.migrateProcessInstance(migrationPlan, processInstance); // then Job jobAfterMigration = rule.getManagementService().createJobQuery().jobId(jobForExecution.getId()).singleResult(); testHelper.assertVariableMigratedToExecution( testHelper.snapshotBeforeMigration.getSingleVariable("var"), jobAfterMigration.getExecutionId()); }
@Test public void testVariableAtConcurrentExecutionInTransitionAddParentScope() { // given ProcessDefinition sourceProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_USER_TASK_PROCESS); ProcessDefinition targetProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_SUBPROCESS_USER_TASK_PROCESS); MigrationPlan migrationPlan = rule.getRuntimeService() .createMigrationPlan(sourceProcessDefinition.getId(), targetProcessDefinition.getId()) .mapActivities("userTask", "userTask") .build(); ProcessInstance processInstance = rule.getRuntimeService() .createProcessInstanceById(sourceProcessDefinition.getId()) .startBeforeActivity("userTask") .startBeforeActivity("userTask") .execute(); Execution concurrentExecution = runtimeService.createExecutionQuery().activityId("userTask").list().get(0); Job jobForExecution = rule.getManagementService().createJobQuery().executionId(concurrentExecution.getId()).singleResult(); runtimeService.setVariableLocal(concurrentExecution.getId(), "var", "value"); // when testHelper.migrateProcessInstance(migrationPlan, processInstance); // then Job jobAfterMigration = rule.getManagementService().createJobQuery().jobId(jobForExecution.getId()).singleResult(); testHelper.assertVariableMigratedToExecution( testHelper.snapshotBeforeMigration.getSingleVariable("var"), jobAfterMigration.getExecutionId()); }
public void testQueryByInvalidExecutionId() { JobQuery query = managementService.createJobQuery().executionId("invalid"); verifyQueryResults(query, 0); try { managementService.createJobQuery().executionId(null).list(); fail(); } catch (ProcessEngineException e) {} }
private Job job(ActivityInstance activityInstance, String activityId) { for(Job job: jobQuery().list()) { } if (activityInstance.getActivityId().equals(activityId)) return jobQuery().executionId(activityInstance.getExecutionIds()[0]).singleResult(); for (ActivityInstance nextActivityInstance: Lists.newArrayList(activityInstance.getChildActivityInstances())) { Job job = job(nextActivityInstance, activityId); if (job != null) return job; } return null; }
/** * Enter into a chained task assert inspecting the one and mostly * one task of the specified task definition key currently available in the * context of the process instance under test of this ProcessInstanceAssert. * * @param activityId id narrowing down the search for jobs * @return JobAssert inspecting the retrieved job. Inspecting a * 'null' Task in case no such Job is available. * @throws org.camunda.bpm.engine.ProcessEngineException in case more than one * job is delivered by the query (after being narrowed to actual * ProcessInstance) */ public JobAssert job(String activityId) { Execution execution = executionQuery().activityId(activityId).active().singleResult(); return JobAssert.assertThat( engine, execution != null ? jobQuery().executionId(execution.getId()).singleResult() : null ); }
/** * Enter into a chained task assert inspecting the one and mostly * one task of the specified task definition key currently available in the * context of the process instance under test of this ProcessInstanceAssert. * * @param activityId id narrowing down the search for jobs * @return JobAssert inspecting the retrieved job. Inspecting a * 'null' Task in case no such Job is available. * @throws org.camunda.bpm.engine.ProcessEngineException in case more than one * job is delivered by the query (after being narrowed to actual * ProcessInstance) */ public JobAssert job(String activityId) { Execution execution = executionQuery().activityId(activityId).active().singleResult(); return JobAssert.assertThat( engine, execution != null ? jobQuery().executionId(execution.getId()).singleResult() : null ); }
/** * Enter into a chained task assert inspecting the one and mostly * one task of the specified task definition key currently available in the * context of the process instance under test of this ProcessInstanceAssert. * * @param activityId id narrowing down the search for jobs * @return JobAssert inspecting the retrieved job. Inspecting a * 'null' Task in case no such Job is available. * @throws org.camunda.bpm.engine.ProcessEngineException in case more than one * job is delivered by the query (after being narrowed to actual * ProcessInstance) */ public JobAssert job(String activityId) { Execution execution = executionQuery().activityId(activityId).active().singleResult(); return JobAssert.assertThat( engine, execution != null ? jobQuery().executionId(execution.getId()).singleResult() : null ); }
Job job = managementService.createJobQuery().executionId(task.getExecutionId()).singleResult(); assertNotNull(job);
assertNotNull(causeIncident); Job job = managementService.createJobQuery().executionId(causeIncident.getExecutionId()).singleResult(); assertNotNull(job);
assertNotNull(rootCauseIncident); Job job = managementService.createJobQuery().executionId(rootCauseIncident.getExecutionId()).singleResult(); assertNotNull(job);
public void testQueryByExecutionId() { Job job = managementService.createJobQuery().processInstanceId(processInstanceIdOne).singleResult(); JobQuery query = managementService.createJobQuery().executionId(job.getExecutionId()); assertEquals(query.singleResult().getId(), job.getId()); verifyQueryResults(query, 1); }
@Deployment(resources = { "org/camunda/bpm/engine/test/bpmn/job/intermediateSignalAsyncProcess.bpmn20.xml", "org/camunda/bpm/engine/test/bpmn/job/intermediateSignalCatchJobPrioProcess.bpmn20.xml"}) public void testAsyncSignalThrowingEventActivityPriority() { // given a receiving process instance with two subscriptions runtimeService.startProcessInstanceByKey("intermediateSignalCatchJobPrioProcess"); // and a process instance that executes an async signal throwing event runtimeService.startProcessInstanceByKey("intermediateSignalJobPrioProcess"); Execution signal1Execution = runtimeService.createExecutionQuery().activityId("signal1").singleResult(); Job signal1Job = managementService.createJobQuery().executionId(signal1Execution.getId()).singleResult(); Execution signal2Execution = runtimeService.createExecutionQuery().activityId("signal2").singleResult(); Job signal2Job = managementService.createJobQuery().executionId(signal2Execution.getId()).singleResult(); // then the jobs have the priority as specified for the receiving events, not the throwing assertEquals(8, signal1Job.getPriority()); assertEquals(4, signal2Job.getPriority()); }
@Test public void testVariableAtConcurrentExecutionInTransitionAddParentScope() { // given ProcessDefinition sourceProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_USER_TASK_PROCESS); ProcessDefinition targetProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_SUBPROCESS_USER_TASK_PROCESS); MigrationPlan migrationPlan = rule.getRuntimeService() .createMigrationPlan(sourceProcessDefinition.getId(), targetProcessDefinition.getId()) .mapActivities("userTask", "userTask") .build(); ProcessInstance processInstance = rule.getRuntimeService() .createProcessInstanceById(sourceProcessDefinition.getId()) .startBeforeActivity("userTask") .startBeforeActivity("userTask") .execute(); Execution concurrentExecution = runtimeService.createExecutionQuery().activityId("userTask").list().get(0); Job jobForExecution = rule.getManagementService().createJobQuery().executionId(concurrentExecution.getId()).singleResult(); runtimeService.setVariableLocal(concurrentExecution.getId(), "var", "value"); // when testHelper.migrateProcessInstance(migrationPlan, processInstance); // then Job jobAfterMigration = rule.getManagementService().createJobQuery().jobId(jobForExecution.getId()).singleResult(); testHelper.assertVariableMigratedToExecution( testHelper.snapshotBeforeMigration.getSingleVariable("var"), jobAfterMigration.getExecutionId()); }
@Test public void testVariableAtConcurrentExecutionInTransition() { // given ProcessDefinition sourceProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_USER_TASK_PROCESS); ProcessDefinition targetProcessDefinition = testHelper.deployAndGetDefinition(AsyncProcessModels.ASYNC_BEFORE_USER_TASK_PROCESS); MigrationPlan migrationPlan = rule.getRuntimeService() .createMigrationPlan(sourceProcessDefinition.getId(), targetProcessDefinition.getId()) .mapEqualActivities() .build(); ProcessInstance processInstance = rule.getRuntimeService() .createProcessInstanceById(sourceProcessDefinition.getId()) .startBeforeActivity("userTask") .startBeforeActivity("userTask") .execute(); Execution concurrentExecution = runtimeService.createExecutionQuery().activityId("userTask").list().get(0); Job jobForExecution = rule.getManagementService().createJobQuery().executionId(concurrentExecution.getId()).singleResult(); runtimeService.setVariableLocal(concurrentExecution.getId(), "var", "value"); // when testHelper.migrateProcessInstance(migrationPlan, processInstance); // then Job jobAfterMigration = rule.getManagementService().createJobQuery().jobId(jobForExecution.getId()).singleResult(); testHelper.assertVariableMigratedToExecution( testHelper.snapshotBeforeMigration.getSingleVariable("var"), jobAfterMigration.getExecutionId()); }