KieSession ksession = (KieSession) context.getBean("ksessionForCommands");
assertNotNull(ksession);
assertEquals(1, ksession.getObjects().size());
assertTrue(ksession.getObjects().toArray()[0] instanceof Person);
Person p1 = (Person) ksession.getObjects().toArray()[0];
assertNotNull(p1);
//if the rules should have fired without any invoke of fireAllRules, then the setHappy(true) should have been called
for (Object object : ksession.getObjects()) {
if (object instanceof Person) {
assertTrue(((Person) object).isHappy());
}
}
Object list = ksession.getGlobal("persons");
assertNotNull(list);
assertTrue(list instanceof ArrayList);
assertEquals(1, ((ArrayList) list).size());
Person p = (Person) ((ArrayList) list).get(0);
assertNotNull(p);
assertEquals(p, p1);
}