use of org.drools.core.test.model.Person in project drools by kiegroup.
the class BasicUpdateTest method updateTheOnlyFactTest.
@Test
public void updateTheOnlyFactTest() {
final Person person = new Person("George", 18);
final FactHandle factPerson = ksession.insert(person);
assertThat(ksession.getObjects()).hasSize(1);
assertThat(ksession.getObjects().iterator().next()).isInstanceOf(Person.class);
Person personToBeVerified = (Person) ksession.getObjects().iterator().next();
verifyPerson(person, personToBeVerified, 18, "George", true);
ksession.update(factPerson, new Person("Henry", 21));
verifyFactsPresentInSession(1, Person.class);
personToBeVerified = (Person) ksession.getObjects().iterator().next();
verifyPerson(person, personToBeVerified, 21, "Henry", false);
}
use of org.drools.core.test.model.Person in project drools by kiegroup.
the class BasicUpdateTest method updateWithDifferentClassGetQueryResultsTest.
@Test
public void updateWithDifferentClassGetQueryResultsTest() {
final Person person = new Person("George", 18);
final FactHandle fact = ksession.insert(person);
verifyFactsWithQuery(Person.class, "persons", person);
final Cheese cheese = new Cheese("Camembert", 2);
ksession.update(fact, cheese);
verifyWithQueryNoPersonsPresentInFacts();
verifyFactsPresentInSession(1, Cheese.class);
Cheese cheeseToBeVerified = (Cheese) ksession.getObjects().iterator().next();
verifyCheese(cheeseToBeVerified, 2, "Camembert");
cheeseToBeVerified = verifyFactPresentInSession(fact, Cheese.class);
verifyCheese(cheeseToBeVerified, 2, "Camembert");
}
use of org.drools.core.test.model.Person in project drools by kiegroup.
the class BasicUpdateTest method updateWithNullTest.
@Test(expected = NullPointerException.class)
public void updateWithNullTest() {
final Person person = new Person("George", 18);
final FactHandle factPerson = ksession.insert(person);
verifyFactsPresentInSession(1, Person.class);
ksession.update(factPerson, null);
}
use of org.drools.core.test.model.Person in project drools by kiegroup.
the class BasicUpdateTest method updateFireRulesTest.
@Test
public void updateFireRulesTest() {
final Person george = new Person("George", 17);
final Person henry = new Person("Henry", 25);
final FactHandle georgeFact = ksession.insert(george);
ksession.insert(henry);
verifyFactsWithQuery(Person.class, "persons", george, henry);
final List<Person> drivers = new ArrayList<>();
ksession.setGlobal("drivers", drivers);
assertThat(ksession.fireAllRules()).isEqualTo(1);
verifyList(drivers, george, henry);
george.setAge(18);
ksession.update(georgeFact, george);
verifyFactsWithQuery(Person.class, "persons", george, henry);
assertThat(ksession.fireAllRules()).isEqualTo(1);
verifyList(drivers, null, george, henry);
}
use of org.drools.core.test.model.Person in project drools by kiegroup.
the class BasicUpdateTest method updateWithDifferentClassGetObjectsTest.
@Test
public void updateWithDifferentClassGetObjectsTest() {
final Person person = new Person("George", 18);
final FactHandle factPerson = ksession.insert(person);
final Person personToBeVerified = verifyFactsPresentInSession(1, Person.class).get(0);
assertThat(personToBeVerified).isEqualTo(person);
final Cheese cheese = new Cheese("Camembert", 50);
ksession.update(factPerson, cheese);
verifyFactsPresentInSession(1, Cheese.class);
final Cheese cheeseToBeVerified = (Cheese) ksession.getObjects().iterator().next();
verifyCheese(cheeseToBeVerified, 50, "Camembert");
}
Aggregations