-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
NEW
-
NEW
The following test exhibit a failing and a working test:
@Test() public void testAbis_NotWorking() { // DROOLS-644 String drl = "import " + Person.class.getCanonicalName() + ";\n" + "global java.util.List list;\n" + "rule R when\n" + " $p1 : Person( name == \"Mario\" ) \n" + " $p2 : Person( age > $p1.age ) \n" + "then\n" + " list.add(\"t0\");\n" + "end\n" + "rule Z when\n" + " $p1 : Person( name == \"Mario\" ) \n" + "then\n" + " modify($p1) { setAge(35); } \n" + "end\n" ; // making the default explicit: KieSession ksession = new KieHelper(PropertySpecificOption.ALWAYS).addContent(drl, ResourceType.DRL) .build() .newKieSession(); ksession.addEventListener(new DebugAgendaEventListener()); System.out.println(drl); ReteDumper.dumpRete(ksession); List<String> list = new ArrayList<String>(); ksession.setGlobal("list", list); Person mario = new Person("Mario", 40); Person mark = new Person("Mark", 37); FactHandle fh_mario = ksession.insert(mario); ksession.insert(mark); int x = ksession.fireAllRules(); assertEquals(1, list.size()); assertEquals("t0", list.get(0)); } @Test() public void testAbis_Working() { // DROOLS-644 String drl = "import " + Person.class.getCanonicalName() + ";\n" + "global java.util.List list;\n" + "rule R when\n" + " $p1 : Person( name == \"Mario\", $a1: age) \n" + " $p2 : Person( age > $a1 ) \n" + "then\n" + " list.add(\"t0\");\n" + "end\n" + "rule Z when\n" + " $p1 : Person( name == \"Mario\" ) \n" + "then\n" + " modify($p1) { setAge(35); } \n" + "end\n" ; // making the default explicit: KieSession ksession = new KieHelper(PropertySpecificOption.ALWAYS).addContent(drl, ResourceType.DRL) .build() .newKieSession(); System.out.println(drl); ReteDumper.dumpRete(ksession); List<String> list = new ArrayList<String>(); ksession.setGlobal("list", list); Person mario = new Person("Mario", 40); Person mark = new Person("Mark", 37); FactHandle fh_mario = ksession.insert(mario); ksession.insert(mark); int x = ksession.fireAllRules(); assertEquals(1, list.size()); assertEquals("t0", list.get(0)); }
- is related to
-
DROOLS-1431 Make property reactivity active by default
- Resolved
- relates to
-
DROOLS-2333 Automatic addition of join condition properties to property reactive watch doesn't work when the first pattern doesn't have any constraint
- Closed
-
RHDM-399 Automatic addition of join condition properties to property reactive watch doesn't work when the first pattern doesn't have any constraint
- Closed