private void createJobDefinitionMock() { List<JobDefinition> jobDefinitions = new ArrayList<JobDefinition>(); JobDefinition mockJobDefinition = MockProvider.createMockJobDefinition(); jobDefinitions.add(mockJobDefinition); JobDefinitionQuery mockJobDefinitionQuery = mock(JobDefinitionQuery.class); when(mockJobDefinitionQuery.list()).thenReturn(jobDefinitions); when(mockManagementService.createJobDefinitionQuery()).thenReturn(mockJobDefinitionQuery); }
private JobDefinitionQuery setUpMockDefinitionQuery(List<JobDefinition> mockedJobDefinitions) { JobDefinitionQuery query = mock(JobDefinitionQuery.class); when(query.list()).thenReturn(mockedJobDefinitions); when(query.count()).thenReturn((long) mockedJobDefinitions.size()); when(processEngine.getManagementService().createJobDefinitionQuery()).thenReturn(query); return query; }
private JobDefinitionQuery setUpMockJobDefinitionQuery(List<JobDefinition> mockedJobDefinitions) { JobDefinitionQuery sampleJobDefinitionQuery = mock(JobDefinitionQuery.class); when(sampleJobDefinitionQuery.list()).thenReturn(mockedJobDefinitions); when(sampleJobDefinitionQuery.count()).thenReturn((long) mockedJobDefinitions.size()); if(mockedJobDefinitions.size() == 1) { when(sampleJobDefinitionQuery.singleResult()).thenReturn(mockedJobDefinitions.get(0)); } when(sampleJobDefinitionQuery.jobDefinitionId(MockProvider.EXAMPLE_JOB_DEFINITION_ID)).thenReturn(sampleJobDefinitionQuery); when(processEngine.getManagementService().createJobDefinitionQuery()).thenReturn(sampleJobDefinitionQuery); when(mockManagementService.createJobDefinitionQuery()).thenReturn(sampleJobDefinitionQuery); return sampleJobDefinitionQuery; }
@Deployment(resources = {"org/camunda/bpm/engine/test/jobexecutor/JobDefinitionDeploymentTest.testAsyncContinuation.bpmn20.xml", "org/camunda/bpm/engine/test/jobexecutor/JobDefinitionDeploymentTest.testMultipleProcessesWithinDeployment.bpmn20.xml"}) public void testMultipleProcessDeployment() { JobDefinitionQuery query = managementService.createJobDefinitionQuery(); List<JobDefinition> jobDefinitions = query.list(); assertEquals(3, jobDefinitions.size()); assertEquals(1, query.processDefinitionKey("testProcess").list().size()); assertEquals(2, query.processDefinitionKey("anotherTestProcess").list().size()); }
@Test public void testNoParametersQuery() { expect().statusCode(Status.OK.getStatusCode()).when().get(JOB_DEFINITION_QUERY_URL); verify(mockedQuery).list(); verifyNoMoreInteractions(mockedQuery); }
public void testQuerySortingAsc() { // exclude job definitions without tenant id because of database-specific ordering List<JobDefinition> jobDefinitions = managementService.createJobDefinitionQuery() .tenantIdIn(TENANT_ONE, TENANT_TWO) .orderByTenantId() .asc() .list(); assertThat(jobDefinitions.size(), is(2)); assertThat(jobDefinitions.get(0).getTenantId(), is(TENANT_ONE)); assertThat(jobDefinitions.get(1).getTenantId(), is(TENANT_TWO)); }
public void testQuerySortingDesc() { // exclude job definitions without tenant id because of database-specific ordering List<JobDefinition> jobDefinitions = managementService.createJobDefinitionQuery() .tenantIdIn(TENANT_ONE, TENANT_TWO) .orderByTenantId() .desc() .list(); assertThat(jobDefinitions.size(), is(2)); assertThat(jobDefinitions.get(0).getTenantId(), is(TENANT_TWO)); assertThat(jobDefinitions.get(1).getTenantId(), is(TENANT_ONE)); }
@Test public void testEmptyQueryAsPost() { Map<String, String> params = new HashMap<String, String>(); params.put("jobDefinitionId", ""); given().contentType(POST_JSON_CONTENT_TYPE).body(params) .expect().statusCode(Status.OK.getStatusCode()) .when().post(JOB_DEFINITION_QUERY_URL); verify(mockedQuery).list(); }
@Test public void testNoParametersQueryAsPost() { given().contentType(POST_JSON_CONTENT_TYPE).body(EMPTY_JSON_OBJECT) .expect().statusCode(Status.OK.getStatusCode()) .when().post(JOB_DEFINITION_QUERY_URL); verify(mockedQuery).list(); verifyNoMoreInteractions(mockedQuery); }
@Deployment(resources = "org/camunda/bpm/engine/test/api/mgmt/jobPrioProcess.bpmn20.xml") public void testGetJobDefinitionDefaultPriority() { // with a process with job definitions deployed // then the definitions have a default null priority, meaning that they don't override the // value in the BPMN XML List<JobDefinition> jobDefinitions = managementService.createJobDefinitionQuery().list(); assertEquals(4, jobDefinitions.size()); assertNull(jobDefinitions.get(0).getOverridingJobPriority()); assertNull(jobDefinitions.get(1).getOverridingJobPriority()); assertNull(jobDefinitions.get(2).getOverridingJobPriority()); assertNull(jobDefinitions.get(3).getOverridingJobPriority()); }
@Test public void testEmptyQuery() { String queryJobDefinitionId = ""; given().queryParam("jobDefinitionId", queryJobDefinitionId).then().expect() .statusCode(Status.OK.getStatusCode()) .when().get(JOB_DEFINITION_QUERY_URL); verify(mockedQuery).list(); }
@Test public void testSetOverridingJobPriorityWithAuthenticatedTenant() { JobDefinition jobDefinition = managementService.createJobDefinitionQuery().list().get(0); identityService.setAuthentication("aUserId", null, Arrays.asList(TENANT_ONE)); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 1701); // then assertThat(managementService.createJobDefinitionQuery() .jobDefinitionId(jobDefinition.getId()).singleResult() .getOverridingJobPriority(), is(1701L)); }
@Test public void testSetOverridingJobPriorityWithCascadeAndAuthenticatedTenant() { JobDefinition jobDefinition = managementService.createJobDefinitionQuery().list().get(0); identityService.setAuthentication("aUserId", null, Arrays.asList(TENANT_ONE)); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 1701, true); // then assertThat(managementService.createJobDefinitionQuery() .jobDefinitionId(jobDefinition.getId()).singleResult() .getOverridingJobPriority(), is(1701L)); }
private void verifyQueryResults(JobDefinitionQuery query, int countExpected) { assertEquals(countExpected, query.list().size()); assertEquals(countExpected, query.count()); if (countExpected == 1) { assertNotNull(query.singleResult()); } else if (countExpected > 1){ verifySingleResultFails(query); } else if (countExpected == 0) { assertNull(query.singleResult()); } }
@Test public void testSetOverridingJobPriorityWithNoAuthenticatedTenant() { JobDefinition jobDefinition = managementService .createJobDefinitionQuery() .list().get(0); identityService.setAuthentication("aUserId", null); // then thrown.expect(ProcessEngineException.class); thrown.expectMessage("Cannot update the process definition '" + jobDefinition.getProcessDefinitionId() +"' because it belongs to no authenticated tenant."); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 1701); }
@Test public void testSetOverridingJobPriorityWithCascadeAndNoAuthenticatedTenant() { JobDefinition jobDefinition = managementService .createJobDefinitionQuery() .list().get(0); identityService.setAuthentication("aUserId", null); // then thrown.expect(ProcessEngineException.class); thrown.expectMessage("Cannot update the process definition '" + jobDefinition.getProcessDefinitionId() +"' because it belongs to no authenticated tenant."); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 1701, true); }
@Test public void testClearOverridingJobPriorityWithNoAuthenticatedTenant() { JobDefinition jobDefinition = managementService.createJobDefinitionQuery().list().get(0); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 1701); identityService.setAuthentication("aUserId", null); // then thrown.expect(ProcessEngineException.class); thrown.expectMessage("Cannot update the process definition '" + jobDefinition.getProcessDefinitionId() +"' because it belongs to no authenticated tenant."); // when managementService.clearOverridingJobPriorityForJobDefinition(jobDefinition.getId()); }
@Test public void testSetJobRetriesDefinitionWithAuthenticatedTenant() { JobDefinition jobDefinition = managementService.createJobDefinitionQuery().list().get(0); String jobId = selectJobByProcessInstanceId(processInstance.getId()).getId(); managementService.setJobRetries(jobId, 0); identityService.setAuthentication("aUserId", null, Arrays.asList(TENANT_ONE)); // sets the retries for failed jobs - That's the reason why job retries are made 0 in the above step managementService.setJobRetriesByJobDefinitionId(jobDefinition.getId(), 1); // then assertEquals(1, selectJobByProcessInstanceId(processInstance.getId()) .getRetries()); }
@Test public void testSetJobRetriesDefinitionWithDisabledTenantCheck() { JobDefinition jobDefinition = managementService.createJobDefinitionQuery().list().get(0); String jobId = selectJobByProcessInstanceId(processInstance.getId()).getId(); managementService.setJobRetries(jobId, 0); identityService.setAuthentication("aUserId", null); engineRule.getProcessEngineConfiguration().setTenantCheckEnabled(false); managementService.setJobRetriesByJobDefinitionId(jobDefinition.getId(), 1); // then assertEquals(1, selectJobByProcessInstanceId(processInstance.getId()).getRetries()); }
public ProcessInstanceSnapshotBuilder jobs() { List<Job> jobs = processEngine.getManagementService().createJobQuery().processInstanceId(processInstanceId).list(); snapshot.setJobs(jobs); String processDefinitionId = processEngine.getRuntimeService() .createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult().getProcessDefinitionId(); List<JobDefinition> jobDefinitions = processEngine.getManagementService().createJobDefinitionQuery().processDefinitionId(processDefinitionId).list(); snapshot.setJobDefinitions(jobDefinitions); return this; }