@Override public void deleteProcessDefinition(String processDefinitionId, boolean cascade, boolean skipCustomListeners, boolean skipIoMappings) { DeleteProcessDefinitionsBuilder builder = deleteProcessDefinitions().byIds(processDefinitionId); if (cascade) { builder.cascade(); } if (skipCustomListeners) { builder.skipCustomListeners(); } if (skipIoMappings) { builder.skipIoMappings(); } builder.delete(); }
@Test public void testDeleteProcessDefinitionsByIdsWithCustomListenersSkipped() { // given IncrementCounterListener.counter = 0; for (int i = 0; i < 3; i++) { deployTwoProcessDefinitions(); } String[] processDefinitionIds = findProcessDefinitionIdsByKey("processOne"); runtimeService.startProcessInstanceByKey("processOne"); // when repositoryService.deleteProcessDefinitions() .byIds(processDefinitionIds) .cascade() .skipCustomListeners() .delete(); // then assertThat(IncrementCounterListener.counter, is(0)); }
@Test public void testDeleteProcessDefinitionsByIdsWithIoMappingsSkipped() { // given testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); String[] processDefinitionIds = findProcessDefinitionIdsByKey(IO_MAPPING_PROCESS_KEY); // when repositoryService.deleteProcessDefinitions() .byIds(processDefinitionIds) .cascade() .skipIoMappings() .delete(); List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery().list(); // then assertThat(processDefinitions.size(), is(0)); }
public void testDeleteProcessDefinitionsByIdsCascading() { // given for (int i = 0; i < 3; i++) { deploymentId = repositoryService.createDeployment() .addClasspathResource(PROCESS_PATH) .deploy().getId(); deploymentIds.add(deploymentId); } // when repositoryService.deleteProcessDefinitions() .byIds(findProcessDefinitionIdsByKey(PROCESS_KEY)) .cascade() .delete(); // then assertUserOperationLogs(); }
@Test public void testDeleteDefinitionsByKeyNotExistingKey() { DeleteProcessDefinitionsBuilder builder = repositoryServiceMock.deleteProcessDefinitions() .byKey("NOT_EXISTING_KEY"); doThrow(new NotFoundException("No process definition found with key 'NOT_EXISTING_KEY'")).when(builder).delete(); given() .pathParam("key", "NOT_EXISTING_KEY") .expect() .statusCode(Status.NOT_FOUND.getStatusCode()) .body(containsString("No process definition found with key 'NOT_EXISTING_KEY'")) .when() .delete(SINGLE_PROCESS_DEFINITION_BY_KEY_DELETE_URL); }
@Test public void testDeleteDefinitionsByKeySkipCustomListenersWithTenantId() { given() .pathParam("key", MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .pathParam("tenant-id", MockProvider.EXAMPLE_TENANT_ID) .queryParam("skipCustomListeners", true) .expect() .statusCode(Status.NO_CONTENT.getStatusCode()) .when() .delete(SINGLE_PROCESS_DEFINITION_BY_KEY_AND_TENANT_ID_DELETE_URL); DeleteProcessDefinitionsBuilder builder = repositoryServiceMock.deleteProcessDefinitions() .byKey(MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .withTenantId(MockProvider.EXAMPLE_TENANT_ID) .skipCustomListeners(); verify(builder).delete(); }
public void testDeleteProcessDefinitionsByKeyCascading() { // given for (int i = 0; i < 3; i++) { deploymentId = repositoryService.createDeployment() .addClasspathResource(PROCESS_PATH) .deploy().getId(); deploymentIds.add(deploymentId); } // when repositoryService.deleteProcessDefinitions() .byKey(PROCESS_KEY) .withoutTenantId() .cascade() .delete(); // then assertUserOperationLogs(); }
@Test public void testDeleteProcessDefinitionsByNotExistingIds() { // then thrown.expect(NotFoundException.class); thrown.expectMessage("No process definition found"); // when repositoryService.deleteProcessDefinitions() .byIds("not existing", "also not existing") .delete(); }
@Test public void testDeleteProcessDefinitionsByKeyWithCustomListenersSkipped() { // given IncrementCounterListener.counter = 0; for (int i = 0; i < 3; i++) { deployTwoProcessDefinitions(); } runtimeService.startProcessInstanceByKey("processOne"); // when repositoryService.deleteProcessDefinitions() .byKey("processOne") .withoutTenantId() .cascade() .skipCustomListeners() .delete(); // then assertThat(IncrementCounterListener.counter, is(0)); }
@Test public void testDeleteProcessDefinitionsByKeyWithIoMappingsSkipped() { // given testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); // when repositoryService.deleteProcessDefinitions() .byKey(IO_MAPPING_PROCESS_KEY) .withoutTenantId() .cascade() .skipIoMappings() .delete(); List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery().list(); // then assertThat(processDefinitions.size(), is(0)); }
protected void deleteProcessDefinitions(DeleteProcessDefinitionsBuilder builder, boolean cascade, boolean skipCustomListeners, boolean skipIoMappings) { if (skipCustomListeners) { builder = builder.skipCustomListeners(); } if (cascade) { builder = builder.cascade(); } if (skipIoMappings) { builder = builder.skipIoMappings(); } try { builder.delete(); } catch (NotFoundException e) { // rewrite status code from bad request (400) to not found (404) throw new InvalidRequestException(Status.NOT_FOUND, e.getMessage()); } }
@Test public void testDeleteDefinitionsByKeySkipCustomListenersAndCascade() { given() .pathParam("key", MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .queryParam("cascade", true) .queryParam("skipCustomListeners", true) .expect() .statusCode(Status.NO_CONTENT.getStatusCode()) .when() .delete(SINGLE_PROCESS_DEFINITION_BY_KEY_DELETE_URL); DeleteProcessDefinitionsBuilder builder = repositoryServiceMock.deleteProcessDefinitions() .byKey(MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .skipCustomListeners() .cascade(); verify(builder).delete(); }
@Test public void testDeleteProcessDefinitionsByIdIsNull() { // then thrown.expect(NullValueException.class); thrown.expectMessage("cannot be null"); // when repositoryService.deleteProcessDefinitions() .byIds(null) .delete(); }
@Test public void testDeleteDefinitionsByKeySkipCustomListenersAndCascadeWithTenantId() { given() .pathParam("key", MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .queryParam("skipCustomListeners", true) .queryParam("cascade", true) .pathParam("tenant-id", MockProvider.EXAMPLE_TENANT_ID) .expect() .statusCode(Status.NO_CONTENT.getStatusCode()) .when() .delete(SINGLE_PROCESS_DEFINITION_BY_KEY_AND_TENANT_ID_DELETE_URL); DeleteProcessDefinitionsBuilder builder = repositoryServiceMock.deleteProcessDefinitions() .byKey(MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .withTenantId(MockProvider.EXAMPLE_TENANT_ID) .skipCustomListeners() .cascade(); verify(builder).delete(); }
@Test public void testDeleteProcessDefinitionsByIdsWithIoMappingsSkipped() { // given testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); String[] processDefinitionIds = findProcessDefinitionIdsByKey(IO_MAPPING_PROCESS_KEY); // when repositoryService.deleteProcessDefinitions() .byIds(processDefinitionIds) .cascade() .skipIoMappings() .delete(); List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery().list(); // then assertThat(processDefinitions.size(), is(0)); }
@Override public void deleteProcessDefinition(String processDefinitionId, boolean cascade, boolean skipCustomListeners, boolean skipIoMappings) { DeleteProcessDefinitionsBuilder builder = deleteProcessDefinitions().byIds(processDefinitionId); if (cascade) { builder.cascade(); } if (skipCustomListeners) { builder.skipCustomListeners(); } if (skipIoMappings) { builder.skipIoMappings(); } builder.delete(); }
@Test public void testDeleteDefinitionsByKeyCascadeWithTenantId() { given() .pathParam("key", MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .pathParam("tenant-id", MockProvider.EXAMPLE_TENANT_ID) .queryParam("cascade", true) .expect() .statusCode(Status.NO_CONTENT.getStatusCode()) .when() .delete(SINGLE_PROCESS_DEFINITION_BY_KEY_AND_TENANT_ID_DELETE_URL); DeleteProcessDefinitionsBuilder builder = repositoryServiceMock.deleteProcessDefinitions() .byKey(MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .withTenantId(MockProvider.EXAMPLE_TENANT_ID) .cascade(); verify(builder).delete(); }
@Test public void testDeleteDefinitionsByKey() { given() .pathParam("key", MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY) .expect() .statusCode(Status.NO_CONTENT.getStatusCode()) .when() .delete(SINGLE_PROCESS_DEFINITION_BY_KEY_DELETE_URL); DeleteProcessDefinitionsBuilder builder = repositoryServiceMock.deleteProcessDefinitions() .byKey(MockProvider.EXAMPLE_PROCESS_DEFINITION_KEY); verify(builder).delete(); }
@Test public void testDeleteProcessDefinitionsByIdsWithCustomListenersSkipped() { // given IncrementCounterListener.counter = 0; for (int i = 0; i < 3; i++) { deployTwoProcessDefinitions(); } String[] processDefinitionIds = findProcessDefinitionIdsByKey("processOne"); runtimeService.startProcessInstanceByKey("processOne"); // when repositoryService.deleteProcessDefinitions() .byIds(processDefinitionIds) .cascade() .skipCustomListeners() .delete(); // then assertThat(IncrementCounterListener.counter, is(0)); }
@Test public void testDeleteProcessDefinitionsByKeyWithIoMappingsSkipped() { // given testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); testHelper.deploy(IO_MAPPING_PROCESS); runtimeService.startProcessInstanceByKey(IO_MAPPING_PROCESS_KEY); // when repositoryService.deleteProcessDefinitions() .byKey(IO_MAPPING_PROCESS_KEY) .withoutTenantId() .cascade() .skipIoMappings() .delete(); List<ProcessDefinition> processDefinitions = repositoryService.createProcessDefinitionQuery().list(); // then assertThat(processDefinitions.size(), is(0)); }