@Test public void testSubProcessCancel() throws Exception { KieSession workingMemory = createStatefulKnowledgeSessionFromRule(true); org.jbpm.process.instance.ProcessInstance processInstance = ( org.jbpm.process.instance.ProcessInstance ) workingMemory.startProcess("com.sample.ruleflow"); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(2, workingMemory.getProcessInstances().size()); processInstance.setState(ProcessInstance.STATE_ABORTED); assertEquals(1, workingMemory.getProcessInstances().size()); }
@Test public void testIndependentSubProcessCancel() throws Exception { KieSession workingMemory = createStatefulKnowledgeSessionFromRule(false); org.jbpm.process.instance.ProcessInstance processInstance = ( org.jbpm.process.instance.ProcessInstance ) workingMemory.startProcess("com.sample.ruleflow"); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(2, workingMemory.getProcessInstances().size()); processInstance.setState(ProcessInstance.STATE_ABORTED); assertEquals(0, workingMemory.getProcessInstances().size()); }
@Test public void testSubProcess() throws Exception { KieSession workingMemory = createStatefulKnowledgeSessionFromRule(true); ProcessInstance processInstance = ( ProcessInstance ) workingMemory.startProcess("com.sample.ruleflow"); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(2, workingMemory.getProcessInstances().size()); workingMemory.insert(new Person()); workingMemory.fireAllRules(); assertEquals(ProcessInstance.STATE_COMPLETED, processInstance.getState()); assertEquals(0, workingMemory.getProcessInstances().size()); }
@Test public void testDynamicSubProcess() throws Exception { KieBase kbase = readDynamicSubProcess(); KieSession workingMemory = kbase.newKieSession(); Map<String, Object> params = new HashMap<String, Object>(); params.put("x", "subflow"); ProcessInstance processInstance = ( ProcessInstance ) workingMemory.startProcess("com.sample.ruleflow", params); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(2, workingMemory.getProcessInstances().size()); workingMemory.insert(new Person()); workingMemory.fireAllRules(); assertEquals(ProcessInstance.STATE_COMPLETED, processInstance.getState()); assertEquals(0, workingMemory.getProcessInstances().size()); }
workingMemory.startProcess("org.drools.ForEach", params); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(4, workingMemory.getProcessInstances().size()); processInstance.setState(ProcessInstance.STATE_ABORTED); assertEquals(3, workingMemory.getProcessInstances().size());
workingMemory.startProcess("org.drools.ForEach", params); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(4, workingMemory.getProcessInstances().size()); processInstance.setState(ProcessInstance.STATE_ABORTED); assertEquals(0, workingMemory.getProcessInstances().size());
assertEquals(1, session.getProcessInstances().size());
session.startProcess("org.test.ruleflow", variables); assertEquals(1, session.getProcessInstances().size()); assertTrue(handler.getWorkItem() != null); assertEquals(1, session.getProcessInstances().size()); VariableScopeInstance variableScopeInstance = (VariableScopeInstance) (( ProcessInstance )session.getProcessInstances().iterator().next()).getContextInstance(VariableScope.VARIABLE_SCOPE); assertEquals("ThisIsMyValue", variableScopeInstance.getVariable("myVariable")); assertEquals(0, session.getProcessInstances().size());
assertEquals(1, session.getProcessInstances().size()); session.halt();
session.startProcess("org.test.ruleflow", variables); assertEquals(1, session.getProcessInstances().size()); assertTrue(handler.getWorkItem() != null); assertEquals(1, session.getProcessInstances().size()); VariableScopeInstance variableScopeInstance = (VariableScopeInstance) (( ProcessInstance )session.getProcessInstances().iterator().next()).getContextInstance(VariableScope.VARIABLE_SCOPE); assertEquals("ThisIsMyValue", variableScopeInstance.getVariable("myVariable")); assertEquals(myPerson, variableScopeInstance.getVariable("myPerson")); assertEquals(0, session.getProcessInstances().size());
ksession.startProcess("org.test.ruleflow"); assertEquals(1, ksession.getProcessInstances().size()); assertEquals(1, ksession.getProcessInstances().size()); assertEquals(0, ksession.getProcessInstances().size());
session.startProcess("com.sample.ruleflow", parameters); assertEquals(1, session.getProcessInstances().size()); assertEquals(3, handler.getWorkItems().size()); session.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertEquals(1, session.getProcessInstances().size()); assertEquals(3, handler.getWorkItems().size()); session.getWorkItemManager().completeWorkItem(workItem.getId(), null); assertEquals(0, session.getProcessInstances().size());
@Test public void testVariableMapping() throws Exception { KieSession workingMemory = createStatefulKnowledgeSessionFromRule(true); Map<String, Object> map = new HashMap<String, Object>(); map.put("x", "x-value"); org.jbpm.process.instance.ProcessInstance processInstance = ( org.jbpm.process.instance.ProcessInstance ) workingMemory.startProcess("com.sample.ruleflow", map); assertEquals(ProcessInstance.STATE_ACTIVE, processInstance.getState()); assertEquals(2, workingMemory.getProcessInstances().size()); for (ProcessInstance p: workingMemory.getProcessInstances()) { VariableScopeInstance variableScopeInstance = (VariableScopeInstance) (( org.jbpm.process.instance.ProcessInstance )p).getContextInstance(VariableScope.VARIABLE_SCOPE); if ("com.sample.ruleflow".equals(p.getProcessId())) { assertEquals("x-value", variableScopeInstance.getVariable("x")); } else if ("com.sample.subflow".equals(p.getProcessId())) { assertEquals("x-value", variableScopeInstance.getVariable("y")); assertEquals("z-value", variableScopeInstance.getVariable("z")); assertEquals(7, variableScopeInstance.getVariable("n")); assertEquals(10, variableScopeInstance.getVariable("o")); } } workingMemory.insert(new Person()); workingMemory.fireAllRules(); assertEquals(ProcessInstance.STATE_COMPLETED, processInstance.getState()); VariableScopeInstance variableScopeInstance = (VariableScopeInstance) processInstance.getContextInstance(VariableScope.VARIABLE_SCOPE); assertEquals("z-value", variableScopeInstance.getVariable("x")); assertEquals(10, variableScopeInstance.getVariable("m")); assertEquals(0, workingMemory.getProcessInstances().size()); }
ProcessInstance processInstance = ( ProcessInstance ) session.startProcess("org.test.ruleflow"); assertEquals(1, session.getProcessInstances().size());
ProcessInstance processInstance = ( ProcessInstance ) session.startProcess("org.test.ruleflow"); assertEquals(1, session.getProcessInstances().size());
ProcessInstance processInstance = ( ProcessInstance ) session.startProcess("org.test.ruleflow"); assertEquals(1, session.getProcessInstances().size());
session.startProcess("com.sample.ruleflow"); assertEquals(2, session.getProcessInstances().size()); assertTrue(handler1.getWorkItem() != null); long workItemId = handler2.getWorkItem().getId(); assertEquals(2, session.getProcessInstances().size()); session.fireAllRules(); assertEquals(0, session.getProcessInstances().size());
assertEquals(2, ksession.getProcessInstances().size()); assertEquals(0, ksession.getProcessInstances().size());
@Override public Collection<ProcessInstance> getProcessInstances() { return kieSession.getProcessInstances(); }
assertEquals(0, ksession.getProcessInstances().size());