use of org.drools.mvel.compiler.Cat in project drools by kiegroup.
the class FieldAccessTest method testAccessFieldsFromSubClass.
@Test
public // unless typesafe=false is used
void testAccessFieldsFromSubClass() throws Exception {
String rule = "";
rule += "package org.drools.compiler;\n";
rule += "import org.drools.mvel.compiler.Person;\n";
rule += "import org.drools.mvel.compiler.Pet;\n";
rule += "import org.drools.mvel.compiler.Cat;\n";
rule += "declare Person @typesafe(false) end\n";
rule += "rule \"Test Rule\"\n";
rule += "when\n";
rule += " Person(\n";
rule += " pet.breed == \"Siamise\"\n";
rule += " )\n";
rule += "then\n";
rule += " System.out.println(\"hello person\");\n";
rule += "end";
KieBase kbase = KieBaseUtil.getKieBaseFromKieModuleFromDrl("test", kieBaseTestConfiguration, rule);
KieSession session = kbase.newKieSession();
final Person person = new Person();
person.setPet(new Cat("Mittens"));
session.insert(person);
session.fireAllRules();
}
Aggregations