if (ruleFlowGroup != null && !agenda.getRuleFlowGroup(ruleFlowGroup).isActive()) { agenda.getRuleFlowGroup(ruleFlowGroup).setAutoDeactivate(false); agenda.activateRuleFlowGroup(ruleFlowGroup, getProcessInstance().getId(), getUniqueId());
assertTrue(ruleFlowGroup0.isAutoDeactivate()); ruleFlowGroup0.setAutoDeactivate(false); assertFalse(ruleFlowGroup0.isAutoDeactivate()); ruleFlowGroup0.size()); ruleFlowGroup0.size()); ruleFlowGroup0.size()); assertTrue(ruleFlowGroup0.isActive()); ruleFlowGroup0.setAutoDeactivate(true); assertTrue(ruleFlowGroup0.isAutoDeactivate()); agenda.fireNextItem(null, 0, -1); assertFalse(ruleFlowGroup0.isActive()); agenda.activateRuleFlowGroup("rule-flow-group-0"); assertEquals(1, ruleFlowGroup0.size()); assertTrue(ruleFlowGroup0.isActive()); ruleFlowGroup0.size()); ksession.executeQueuedActionsForRete(); assertEquals(0, ruleFlowGroup0.size()); agenda.fireNextItem(null, 0, -1); assertFalse(ruleFlowGroup0.isActive()); agenda.unstageActivations(); assertEquals(1,
ruleFlowGroup.setAutoDeactivate(false); ((InternalRuleFlowGroup) ruleFlowGroup).setActive(true); node.assertLeftTuple(tuple1, ksession); assertEquals(0, ruleFlowGroup.size()); agenda.unstageActivations(); assertEquals(1, ruleFlowGroup.size()); agenda.unstageActivations(); assertEquals(2, ruleFlowGroup.size());
@Test public void testRuleFlowGroupDeactivate() throws Exception { // need to make eager, for cancel to work, (mdp) KieBase kbase = loadKnowledgeBase("ruleflowgroup2.drl"); KieSession ksession = kbase.newKieSession(); final List list = new ArrayList(); ksession.setGlobal( "list", list ); ksession.insert( "Test" ); ksession.fireAllRules(); assertEquals( 0, list.size() ); assertEquals(2, ((InternalAgenda) ksession.getAgenda()).getRuleFlowGroup("Group1").size()); ((InternalAgenda)ksession.getAgenda()).activateRuleFlowGroup("Group1"); ksession.fireAllRules(); assertEquals( 0, list.size() ); }
assertTrue(ruleFlowGroup0.isAutoDeactivate()); ruleFlowGroup0.size()); assertEquals(0, agenda.agendaSize());
if (ruleFlowGroup != null && !agenda.getRuleFlowGroup(ruleFlowGroup).isActive()) { agenda.getRuleFlowGroup(ruleFlowGroup).setAutoDeactivate(false); agenda.activateRuleFlowGroup(ruleFlowGroup, getProcessInstance().getId(), getUniqueId());
ruleFlowGroup0.size()); assertEquals(1, ruleFlowGroup1.size()); assertEquals(1, ruleFlowGroup2.size()); assertEquals(4, agenda.agendaSize()); ruleFlowGroup0.size()); assertEquals(4, agenda.agendaSize()); ruleFlowGroup0.size()); assertEquals(3, agenda.agendaSize()); ruleFlowGroup0.size()); assertEquals(2, agenda.agendaSize()); agenda.activateRuleFlowGroup("rule-flow-group-2"); assertEquals(1, ruleFlowGroup1.size()); assertEquals(1, ruleFlowGroup2.size()); assertEquals(2, agenda.agendaSize()); ruleFlowGroup1.size());