use of org.drools.core.reteoo.ReteooFactHandleFactory in project drools by kiegroup.
the class EqualityKeyTest method test1.
@Test
public void test1() {
ReteooFactHandleFactory factory = new ReteooFactHandleFactory();
InternalFactHandle ch1 = factory.newFactHandle(new Cheese("c", 10), null, null, null);
EqualityKey key = new EqualityKey(ch1);
assertSame(ch1, key.getFactHandle());
assertEquals(1, key.size());
InternalFactHandle ch2 = factory.newFactHandle(new Cheese("c", 10), null, null, null);
key.addFactHandle(ch2);
assertEquals(2, key.size());
assertEquals(ch2, key.get(1));
key.removeFactHandle(ch1);
assertSame(ch2, key.getFactHandle());
assertEquals(1, key.size());
key.removeFactHandle(ch2);
assertNull(key.getFactHandle());
assertEquals(0, key.size());
key = new EqualityKey(ch2);
key.addFactHandle(ch1);
assertSame(ch2, key.getFactHandle());
assertEquals(2, key.size());
assertEquals(ch1, key.get(1));
key.removeFactHandle(ch1);
assertSame(ch2, key.getFactHandle());
assertEquals(1, key.size());
key.removeFactHandle(ch2);
assertNull(key.getFactHandle());
assertEquals(0, key.size());
}
Aggregations