@Test @OperateOnDeployment("mainDeployment") public void testDelegateVariableMapping() { //given runtimeService.startProcessInstanceByKey("callSimpleSubProcess"); testDelegation(); }
@Test @OperateOnDeployment("mainDeployment") public void testDelegateVariableMappingExpression() { runtimeService.startProcessInstanceByKey("callSubProcessExpr"); testDelegation(); }
@Test @OperateOnDeployment("test1") public void testNonExistingEngineRetrieval() { ProcessEngineService engineService = BpmPlatform.getProcessEngineService(); ProcessEngine engine = engineService.getProcessEngine("aNonExistingEngineName"); Assert.assertNull(engine); } }
@Test @OperateOnDeployment("clientDeployment") public void testStartInstanceWithBeanCondition() { ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("process"); assertEquals("okay", runtimeService.getVariable(processInstance.getId(), "result")); } }
@Test @SuppressWarnings("unchecked") @OperateOnDeployment("clientDeployment") public void shouldSwitchContextWhenCallingFromBpmn() { ProcessInstance pi = runtimeService.startProcessInstanceByKey("testProcess"); VariableInstance decisionResult = runtimeService.createVariableInstanceQuery() .processInstanceIdIn(pi.getId()) .variableName("result").singleResult(); List<Map<String, Object>> result = (List<Map<String, Object>>) decisionResult.getValue(); assertEquals("ok", result.get(0).get("result")); }
@Test @OperateOnDeployment("clientDeployment") public void testResolveClass() { // assert that we cannot resolve the bean here: Assert.assertNull(ProgrammaticBeanLookup.lookup("exampleSignallableActivityBehaviorBean")); // but the process can since it performs context switch to the process archive for execution ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("testResolveBean"); runtimeService.signal(processInstance.getId()); }
@Test @OperateOnDeployment(value=PA2) public void testDeployProcessArchive() { Assert.assertNotNull(processEngine); RepositoryService repositoryService = processEngine.getRepositoryService(); long count = repositoryService.createProcessDefinitionQuery() .processDefinitionKey("testDeployProcessArchive") .count(); Assert.assertEquals(1, count); }
@Test @OperateOnDeployment("timerStart") @InSequence(2) public void testAssertPriority() { // then the timer start event job has the priority resolved from the bean Job job = managementService.createJobQuery().activityId("timerStart").singleResult(); Assert.assertNotNull(job); Assert.assertEquals(PriorityBean.PRIORITY, job.getPriority()); } }
@Test @OperateOnDeployment("clientDeployment") public void testStartInstanceWithBeanCondition() { ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("process"); // then ProcessInstance subInstance = runtimeService.createProcessInstanceQuery().processDefinitionKey("subProcess").superProcessInstanceId(processInstance.getId()).singleResult(); assertNotNull(subInstance); } }
@Test @OperateOnDeployment("clientDeployment") public void testResolveClassFromJobExecutor() throws InterruptedException, SystemException { runtimeService.startProcessInstanceByKey("testResolveClassFromJobExecutor"); Assert.assertEquals(1, runtimeService.createProcessInstanceQuery().count()); waitForJobExecutorToProcessAllJobs(); Assert.assertEquals(0, runtimeService.createProcessInstanceQuery().count()); }
@Test @OperateOnDeployment("clientDeployment") public void testResolveBean() { Assert.assertEquals(0, runtimeService.createProcessInstanceQuery().processDefinitionKey("testResolveBean").count()); // but the process engine can: runtimeService.startProcessInstanceByKey("testResolveBean"); Assert.assertEquals(0,runtimeService.createProcessInstanceQuery().processDefinitionKey("testResolveBean").count()); }
@Test @OperateOnDeployment("clientDeployment") public void testResolveBeanFromJobExecutor() { Assert.assertEquals(0,runtimeService.createProcessInstanceQuery().processDefinitionKey("testResolveBeanFromJobExecutor").count()); runtimeService.startProcessInstanceByKey("testResolveBeanFromJobExecutor"); Assert.assertEquals(1,runtimeService.createProcessInstanceQuery().processDefinitionKey("testResolveBeanFromJobExecutor").count()); waitForJobExecutorToProcessAllJobs(); Assert.assertEquals(0,runtimeService.createProcessInstanceQuery().processDefinitionKey("testResolveBeanFromJobExecutor").count()); }
@Test @OperateOnDeployment("clientDeployment") public void testThrowErrorInExecuteParallelMultiInstance() { String pi = runtimeService.startProcessInstanceByKey("testProcessParallelMI", throwError()).getId(); assertTrue((Boolean) runtimeService.getVariable(pi, "executed")); assertNull(runtimeService.getVariable(pi, "signaled")); Task userTask = taskService.createTaskQuery().processInstanceId(pi).singleResult(); assertNotNull(userTask); assertEquals("userTaskError", userTask.getTaskDefinitionKey()); taskService.complete(userTask.getId()); }
@Test @OperateOnDeployment("clientDeployment") public void testThrowExceptionInDelegateExpressionExecuteSequentialMultiInstance() { String pi = runtimeService.startProcessInstanceByKey("testProcessSequentialMI", throwException()).getId(); assertTrue((Boolean) runtimeService.getVariable(pi, "executed")); assertNull(runtimeService.getVariable(pi, "signaled")); Task userTask = taskService.createTaskQuery().processInstanceId(pi).singleResult(); assertNotNull(userTask); assertEquals("userTaskException", userTask.getTaskDefinitionKey()); taskService.complete(userTask.getId()); }
@Test @OperateOnDeployment("clientDeployment") public void testThrowErrorInDelegateExpressionExecute() { String pi = runtimeService.startProcessInstanceByKey("testProcess", throwError()).getId(); assertTrue((Boolean) runtimeService.getVariable(pi, "executed")); assertNull(runtimeService.getVariable(pi, "signaled")); Task userTask = taskService.createTaskQuery().processInstanceId(pi).singleResult(); assertNotNull(userTask); assertEquals("userTaskError", userTask.getTaskDefinitionKey()); taskService.complete(userTask.getId()); }
@Test @OperateOnDeployment("clientDeployment") public void testThrowExceptionInDelegateExpressionExecuteParallelMultiInstance() { String pi = runtimeService.startProcessInstanceByKey("testProcessParallelMI", throwException()).getId(); assertTrue((Boolean) runtimeService.getVariable(pi, "executed")); assertNull(runtimeService.getVariable(pi, "signaled")); Task userTask = taskService.createTaskQuery().processInstanceId(pi).singleResult(); assertNotNull(userTask); assertEquals("userTaskException", userTask.getTaskDefinitionKey()); taskService.complete(userTask.getId()); }
@Test @OperateOnDeployment("pa") public void testInvokeBean() throws Exception{ // this testcase first resolves the Bean synchronously and then from the JobExecutor ProcessInstance pi = runtimeService.startProcessInstanceByKey("testInvokeBean"); Assert.assertEquals(runtimeService.getVariable(pi.getId(), "result"), true); runtimeService.setVariable(pi.getId(), "result", false); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); waitForJobExecutorToProcessAllJobs(); Assert.assertEquals(runtimeService.getVariable(pi.getId(), "result"), true); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); }
@Test @OperateOnDeployment("pa") public void testInvokeBean() throws Exception{ // this testcase first resolves the Bean synchronously and then from the JobExecutor ProcessInstance pi = runtimeService.startProcessInstanceByKey("testInvokeBean"); Assert.assertEquals(true, runtimeService.getVariable(pi.getId(), "result")); runtimeService.setVariable(pi.getId(), "result", false); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); waitForJobExecutorToProcessAllJobs(); Assert.assertEquals(true, runtimeService.getVariable(pi.getId(), "result")); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); }
@Test @OperateOnDeployment("pa") public void testInvokeBean() throws Exception{ // this testcase first resolves the Bean synchronously and then from the JobExecutor ProcessInstance pi = runtimeService.startProcessInstanceByKey("testInvokeBean"); Assert.assertEquals(true, runtimeService.getVariable(pi.getId(), "result")); runtimeService.setVariable(pi.getId(), "result", false); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); waitForJobExecutorToProcessAllJobs(); Assert.assertEquals(true, runtimeService.getVariable(pi.getId(), "result")); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); }
@Test @OperateOnDeployment("pa") public void testInvokeBean() throws Exception{ // this testcase first resolves the Bean synchronously and then from the JobExecutor ProcessInstance pi = runtimeService.startProcessInstanceByKey("testInvokeBean"); Assert.assertEquals(true, runtimeService.getVariable(pi.getId(), "result")); runtimeService.setVariable(pi.getId(), "result", false); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); waitForJobExecutorToProcessAllJobs(); Assert.assertEquals(true, runtimeService.getVariable(pi.getId(), "result")); taskService.complete(taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult().getId()); }