protected Job selectJobByProcessInstanceId(String processInstanceId) { Job job = managementService .createJobQuery() .processInstanceId(processInstanceId) .singleResult(); return job; } }
@Test public void testJobGetIdDoesntExist() { JobQuery invalidQueryNonExistingJob; invalidQueryNonExistingJob = mock(JobQuery.class); when(mockManagementService.createJobQuery().jobId(MockProvider.NON_EXISTING_JOB_ID)).thenReturn(invalidQueryNonExistingJob); when(invalidQueryNonExistingJob.singleResult()).thenReturn(null); String jobId = MockProvider.NON_EXISTING_JOB_ID; given().pathParam("id", jobId).then().expect().statusCode(Status.NOT_FOUND.getStatusCode()).contentType(ContentType.JSON) .body("type", equalTo(InvalidRequestException.class.getSimpleName())) .body("message", equalTo("Job with id " + jobId + " does not exist")).when() .get(SINGLE_JOB_RESOURCE_URL); }
protected void executeJob() { Job job = managementService.createJobQuery().singleResult(); assertNotNull(job); managementService.executeJob(job.getId()); }
@Deployment(resources = "org/camunda/bpm/engine/test/bpmn/job/oneTaskProcess.bpmn20.xml") public void testSetJobDuedateNonTimerJob(){ runtimeService.startProcessInstanceByKey("oneTaskProcess"); Job job = managementService.createJobQuery().processDefinitionKey("oneTaskProcess").singleResult(); assertNotNull(job); managementService.setJobDuedate(job.getId(), new Date()); job = managementService.createJobQuery().processDefinitionKey("oneTaskProcess").singleResult(); assertNotNull(job.getDuedate()); }
@Test public void testSetJobRetriesWithAuthenticatedTenant() { Job timerJob = managementService.createJobQuery() .processInstanceId(processInstance.getId()) .singleResult(); identityService.setAuthentication("aUserId", null, Arrays.asList(TENANT_ONE)); managementService.setJobRetries(timerJob.getId(), 5); assertEquals(5, managementService.createJobQuery() .processInstanceId(processInstance.getId()) .singleResult() .getRetries()); }
@Test public void testPriorityOnProcessElement() { // given processInstance = runtimeService.startProcessInstanceByKey("priorityProcess"); Job job = managementService.createJobQuery().singleResult(); // then Assert.assertEquals(PriorityBean.PRIORITY, job.getPriority()); }
@Test public void testQueryByConfiguration() { String jobId = managementService.createJobQuery().processInstanceId(processInstanceIds.get(0)).singleResult().getId(); IncidentQuery query = runtimeService.createIncidentQuery().configuration(jobId); assertEquals(1, query.count()); List<Incident> incidents = query.list(); assertFalse(incidents.isEmpty()); assertEquals(1, incidents.size()); }
protected void executeSeedJob(Batch batch) { String seedJobDefinitionId = batch.getSeedJobDefinitionId(); Job seedJob = managementService.createJobQuery().jobDefinitionId(seedJobDefinitionId).singleResult(); assertNotNull(seedJob); managementService.executeJob(seedJob.getId()); }
@Deployment(resources = {"org/camunda/bpm/engine/test/api/mgmt/timerOnTask.bpmn20.xml"}) public void testDeleteJobDeletion() { ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("timerOnTask"); Job timerJob = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); assertNotNull("Task timer should be there", timerJob); managementService.deleteJob(timerJob.getId()); timerJob = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); assertNull("There should be no job now. It was deleted", timerJob); }
private void verifyFailedJob(JobQuery query, ProcessInstance processInstance) { verifyQueryResults(query, 1); Job failedJob = query.singleResult(); assertNotNull(failedJob); assertEquals(processInstance.getId(), failedJob.getProcessInstanceId()); assertNotNull(failedJob.getExceptionMessage()); assertThat(failedJob.getExceptionMessage(), containsString(EXCEPTION_MESSAGE)); }
public void testStartTimerJobIncidentQueryWithoutAuthorization() { // given disableAuthorization(); String jobId = managementService.createJobQuery().singleResult().getId(); managementService.setJobRetries(jobId, 0); enableAuthorization(); // when HistoricIncidentQuery query = historyService.createHistoricIncidentQuery(); // then verifyQueryResults(query, 0); }
@Test public void testSetJobDueDateWithNoAuthenticatedTenant() { Job timerJob = managementService.createJobQuery().processInstanceId(processInstance.getId()).singleResult(); identityService.setAuthentication("aUserId", null); // then thrown.expect(ProcessEngineException.class); thrown.expectMessage("Cannot update the job '" + timerJob.getId() +"' because it belongs to no authenticated tenant."); // when managementService.setJobDuedate(timerJob.getId(), new Date()); }
public void testTimerStartEventPriorityOnActivity() { // given a timer start job org.camunda.bpm.engine.repository.Deployment deployment = repositoryService .createDeployment() .addClasspathResource("org/camunda/bpm/engine/test/bpmn/job/JobPrioritizationBpmnConstantValueTest.testTimerStartEventPriorityOnActivity.bpmn20.xml") .deploy(); Job job = managementService.createJobQuery().singleResult(); // then the timer start job has the priority defined in the process definition assertEquals(1515, job.getPriority()); // cleanup repositoryService.deleteDeployment(deployment.getId(), true); }
public void testStartTimerJobIncidentQueryWithReadPermissionOnAnyProcessInstance() { // given disableAuthorization(); String jobId = managementService.createJobQuery().singleResult().getId(); managementService.setJobRetries(jobId, 0); enableAuthorization(); createGrantAuthorization(PROCESS_INSTANCE, ANY, userId, READ); // when IncidentQuery query = runtimeService.createIncidentQuery(); // then verifyQueryResults(query, 1); }
public void testStartTimerJobIncidentQueryWithReadInstancePermissionOnAnyProcessDefinition() { // given disableAuthorization(); String jobId = managementService.createJobQuery().singleResult().getId(); managementService.setJobRetries(jobId, 0); enableAuthorization(); createGrantAuthorization(PROCESS_DEFINITION, ANY, userId, READ_INSTANCE); // when IncidentQuery query = runtimeService.createIncidentQuery(); // then verifyQueryResults(query, 1); }
@Deployment(resources = {"org/camunda/bpm/engine/test/history/HistoricJobLogTest.testAsyncContinuation.bpmn20.xml"}) public void testQueryBySuccessLog() { runtimeService.startProcessInstanceByKey("process", Variables.createVariables().putValue("fail", false)); String jobId = managementService.createJobQuery().singleResult().getId(); managementService.executeJob(jobId); HistoricJobLogQuery query = historyService.createHistoricJobLogQuery().successLog(); verifyQueryResults(query, 1); }
@Deployment public void testExclusiveService() { // start process runtimeService.startProcessInstanceByKey("exclusive"); // now there should be 1 exclusive job in the database: Job job = managementService.createJobQuery().singleResult(); assertNotNull(job); assertTrue(((JobEntity)job).isExclusive()); waitForJobExecutorToProcessAllJobs(6000L); // all the jobs are done assertEquals(0, managementService.createJobQuery().count()); }
protected void executeSeedAndBatchJobs(Batch batch) { Job job = managementService.createJobQuery().jobDefinitionId(batch.getSeedJobDefinitionId()).singleResult(); // seed job managementService.executeJob(job.getId()); for (Job pending : managementService.createJobQuery().jobDefinitionId(batch.getBatchJobDefinitionId()).list()) { managementService.executeJob(pending.getId()); } }
public void executeSeedAndBatchJobs(Batch batch) { Job job = engineRule.getManagementService().createJobQuery().jobDefinitionId(batch.getSeedJobDefinitionId()).singleResult(); // seed job managementService.executeJob(job.getId()); for (Job pending : managementService.createJobQuery().jobDefinitionId(batch.getBatchJobDefinitionId()).list()) { managementService.executeJob(pending.getId()); } }
@Deployment public void testTimeCycle() { String processInstanceId = runtimeService.startProcessInstanceByKey("process").getId(); JobQuery jobQuery = managementService.createJobQuery(); assertEquals(1, jobQuery.count()); String jobId = jobQuery.singleResult().getId(); managementService.executeJob(jobId); assertEquals(0, jobQuery.count()); String taskId = taskService.createTaskQuery().singleResult().getId(); taskService.complete(taskId); assertProcessEnded(processInstanceId); }