public void testCaseOnePreviousDeploymentWithPA() { // given MyEmbeddedProcessApplication application = new MyEmbeddedProcessApplication(); // first deployment Deployment deployment1 = repositoryService .createDeployment(application.getReference()) .name(DEPLOYMENT_NAME) .addClasspathResource(CMMN_RESOURCE_1) .deploy(); // second deployment Deployment deployment2 = repositoryService .createDeployment() .name(DEPLOYMENT_NAME) .addDeploymentResources(deployment1.getId()) .deploy(); verifyQueryResults(caseDefinitionQueryByKey(CASE_KEY_1), 2); // when caseService.createCaseInstanceByKey(CASE_KEY_1); // then assertTrue(application.isCalled()); deleteDeployments(deployment1, deployment2); }
public void testProcessOnePreviousDeploymentWithPA() { // given MyEmbeddedProcessApplication application = new MyEmbeddedProcessApplication(); // first deployment Deployment deployment1 = repositoryService .createDeployment(application.getReference()) .name(DEPLOYMENT_NAME) .addModelInstance(BPMN_RESOURCE_1, createProcessWithServiceTask(PROCESS_KEY_1)) .deploy(); // second deployment Deployment deployment2 = repositoryService .createDeployment() .name(DEPLOYMENT_NAME) .addDeploymentResources(deployment1.getId()) .deploy(); verifyQueryResults(processDefinitionQueryByKey(PROCESS_KEY_1), 2); // when runtimeService.startProcessInstanceByKey(PROCESS_KEY_1); // then assertTrue(application.isCalled()); deleteDeployments(deployment1, deployment2); }
public void testCaseTwoPreviousDeploymentsWithDifferentPA() { // given // first deployment MyEmbeddedProcessApplication application1 = new MyEmbeddedProcessApplication(); Deployment deployment1 = repositoryService .createDeployment(application1.getReference()) .name(DEPLOYMENT_NAME) .addClasspathResource(CMMN_RESOURCE_1) .addClasspathResource(CMMN_RESOURCE_2) .deploy(); // second deployment MyEmbeddedProcessApplication application2 = new MyEmbeddedProcessApplication(); Deployment deployment2 = repositoryService .createDeployment(application2.getReference()) .name(DEPLOYMENT_NAME) .addClasspathResource(CMMN_RESOURCE_1) .deploy(); // third deployment Deployment deployment3 = repositoryService .createDeployment() .name(DEPLOYMENT_NAME) .addDeploymentResources(deployment1.getId()) .deploy(); verifyQueryResults(caseDefinitionQueryByKey(CASE_KEY_1), 3); verifyQueryResults(caseDefinitionQueryByKey(CASE_KEY_2), 2); // when (1) caseService.createCaseInstanceByKey(CASE_KEY_1); // then (1) assertFalse(application1.isCalled()); assertTrue(application2.isCalled()); // reset flag application2.setCalled(false); // when (2) caseService.createCaseInstanceByKey(CASE_KEY_2); // then (2) assertTrue(application1.isCalled()); assertFalse(application2.isCalled()); deleteDeployments(deployment1, deployment2, deployment3); }
public void testProcessTwoPreviousDeploymentsWithDifferentPA() { // given // first deployment MyEmbeddedProcessApplication application1 = new MyEmbeddedProcessApplication(); Deployment deployment1 = repositoryService .createDeployment(application1.getReference()) .name(DEPLOYMENT_NAME) .addModelInstance(BPMN_RESOURCE_1, createProcessWithServiceTask(PROCESS_KEY_1)) .addModelInstance(BPMN_RESOURCE_2, createProcessWithServiceTask(PROCESS_KEY_2)) .deploy(); // second deployment MyEmbeddedProcessApplication application2 = new MyEmbeddedProcessApplication(); Deployment deployment2 = repositoryService .createDeployment(application2.getReference()) .name(DEPLOYMENT_NAME) .addModelInstance(BPMN_RESOURCE_1, createProcessWithServiceTask(PROCESS_KEY_1)) .deploy(); // third deployment Deployment deployment3 = repositoryService .createDeployment() .name(DEPLOYMENT_NAME) .addDeploymentResources(deployment1.getId()) .deploy(); verifyQueryResults(processDefinitionQueryByKey(PROCESS_KEY_1), 3); verifyQueryResults(processDefinitionQueryByKey(PROCESS_KEY_2), 2); // when (1) runtimeService.startProcessInstanceByKey(PROCESS_KEY_1); // then (1) assertFalse(application1.isCalled()); assertTrue(application2.isCalled()); // reset flag application2.setCalled(false); // when (2) runtimeService.startProcessInstanceByKey(PROCESS_KEY_2); // then (2) assertTrue(application1.isCalled()); assertFalse(application2.isCalled()); deleteDeployments(deployment1, deployment2, deployment3); }
public void testCaseTwoPreviousDeploymentUnregisterSecondPA() { // given // first deployment MyEmbeddedProcessApplication application1 = new MyEmbeddedProcessApplication(); Deployment deployment1 = repositoryService .createDeployment(application1.getReference()) .name(DEPLOYMENT_NAME) .addClasspathResource(CMMN_RESOURCE_1) .deploy(); // second deployment MyEmbeddedProcessApplication application2 = new MyEmbeddedProcessApplication(); Deployment deployment2 = repositoryService .createDeployment(application2.getReference()) .name(DEPLOYMENT_NAME) .addClasspathResource(CMMN_RESOURCE_1) .deploy(); // second deployment Deployment deployment3 = repositoryService .createDeployment() .name(DEPLOYMENT_NAME) .addDeploymentResources(deployment1.getId()) .deploy(); verifyQueryResults(caseDefinitionQueryByKey(CASE_KEY_1), 3); // when managementService.unregisterProcessApplication(deployment2.getId(), true); caseService.createCaseInstanceByKey(CASE_KEY_1); // then assertTrue(application1.isCalled()); assertFalse(application2.isCalled()); deleteDeployments(deployment1, deployment2, deployment3); }