@Test public void testRuleSegmentsAllLinkedTestMasks() { setUp( JOIN_NODE ); KieBaseConfiguration kconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(kconf); StatefulKnowledgeSessionImpl wm = new StatefulKnowledgeSessionImpl( 1L, kBase ); PathMemory rs = (PathMemory) wm.getNodeMemory( rtn1 ); assertFalse( rs.isRuleLinked() ); assertEquals( 1, rs.getAllLinkedMaskTest() ); rs = (PathMemory) wm.getNodeMemory( rtn2 ); assertFalse( rs.isRuleLinked() ); assertEquals( 3, rs.getAllLinkedMaskTest() ); rs = (PathMemory) wm.getNodeMemory( rtn3 ); assertFalse( rs.isRuleLinked() ); assertEquals( 7, rs.getAllLinkedMaskTest() ); }
@Test public void testRuleSegmentsAllLinkedTestMasks() { setUp( JOIN_NODE ); KieBaseConfiguration kconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(kconf); StatefulKnowledgeSessionImpl wm = new StatefulKnowledgeSessionImpl( 1L, kBase ); PathMemory rs = (PathMemory) wm.getNodeMemory( rtn1 ); assertFalse( rs.isRuleLinked() ); assertEquals( 1, rs.getAllLinkedMaskTest() ); rs = (PathMemory) wm.getNodeMemory( rtn2 ); assertFalse( rs.isRuleLinked() ); assertEquals( 3, rs.getAllLinkedMaskTest() ); rs = (PathMemory) wm.getNodeMemory( rtn3 ); assertFalse( rs.isRuleLinked() ); assertEquals( 7, rs.getAllLinkedMaskTest() ); }
BetaMemory bm = (BetaMemory) ksession.getNodeMemory( n1 ); assertNull(bm.getSegmentMemory()); bm = (BetaMemory) ksession.getNodeMemory( n3 ); assertEquals( 1, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) ksession.getNodeMemory( n4 ); assertEquals( 2, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) ksession.getNodeMemory( n5 ); assertEquals( 4, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) ksession.getNodeMemory( n6 ); assertEquals( 8, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) ksession.getNodeMemory( n1 ); assertNull( bm.getSegmentMemory() ); bm = (BetaMemory) ksession.getNodeMemory( n3 ); assertEquals( 1, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) ksession.getNodeMemory( n4 ); assertEquals( 2, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() );
LiaNodeMemory liaMem = (LiaNodeMemory) ksession.getNodeMemory( liaNode ); assertEquals( 1, liaMem.getNodePosMaskBit() ); assertEquals( 3, liaMem.getSegmentMemory().getAllLinkedMaskTest() ); BetaMemory bm1 = (BetaMemory) ksession.getNodeMemory( n1 ); assertEquals( 2, bm1.getNodePosMaskBit() ); assertEquals( 3, bm1.getSegmentMemory().getAllLinkedMaskTest() ); liaMem = (LiaNodeMemory) ksession.getNodeMemory( liaNode ); assertEquals( 1, liaMem.getNodePosMaskBit() ); assertEquals( 3, liaMem.getSegmentMemory().getAllLinkedMaskTest() ); bm1 = (BetaMemory) ksession.getNodeMemory( n1 ); assertEquals( 2, bm1.getNodePosMaskBit() ); assertEquals( 3, bm1.getSegmentMemory().getAllLinkedMaskTest() );
PathMemory rtn1Rs = (PathMemory) wm.getNodeMemory( rtn1 ); PathMemory rtn2Rs = (PathMemory) wm.getNodeMemory( rtn2 ); PathMemory rtn3Rs = (PathMemory) wm.getNodeMemory( rtn3 ); LeftInputAdapterNode.LiaNodeMemory lmem = (LeftInputAdapterNode.LiaNodeMemory) wm.getNodeMemory( lian ); assertEquals( 1, lmem.getNodePosMaskBit() ); bm = (BetaMemory) wm.getNodeMemory( n1 ); assertEquals( 2, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) wm.getNodeMemory( n2 ); assertEquals( 4, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) wm.getNodeMemory( n3 ); assertEquals( 8, bm.getNodePosMaskBit() ); assertEquals( 15, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) wm.getNodeMemory( n4 ); assertEquals( 1, bm.getNodePosMaskBit() ); assertEquals( 3, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) wm.getNodeMemory( n5 ); assertEquals( 2, bm.getNodePosMaskBit() ); assertEquals( 3, bm.getSegmentMemory().getAllLinkedMaskTest() ); bm = (BetaMemory) wm.getNodeMemory( n6 ); assertEquals( 1, bm.getNodePosMaskBit() );
Iterator<InternalFactHandle> it = ((ObjectTypeNodeMemory) sessionImpl.getNodeMemory( droolsQueryNode )).iterator(); assertFalse( it.hasNext() );
List<PathMemory> list; PathMemory rtn1Rs = (PathMemory) wm.getNodeMemory( rtn1 ); PathMemory rtn2Rs = (PathMemory) wm.getNodeMemory( rtn2 ); PathMemory rtn3Rs = (PathMemory) wm.getNodeMemory( rtn3 );
@Test public void testAllLinkedInWithNotNodesOnly() { setUp( NOT_NODE ); assertEquals( NotNode.class, n3.getClass() ); // make sure it created NotNodes KieBaseConfiguration kconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(kconf); StatefulKnowledgeSessionImpl ksession = (StatefulKnowledgeSessionImpl)kBase.newKieSession(); BetaMemory bm = (BetaMemory) ksession.getNodeMemory( n3 ); createSegmentMemory( n3, ksession ); assertTrue( bm.getSegmentMemory().isSegmentLinked() ); // not nodes start off linked DefaultFactHandle f1 = (DefaultFactHandle) ksession.insert( "test1" ); // unlinked after first assertion n3.assertObject( f1, context, ksession ); // this doesn't unlink on the assertObject, as the node's memory must be processed. So use the helper method the main network evaluator uses. PhreakNotNode.unlinkNotNodeOnRightInsert( (NotNode) n3, bm, ksession ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n3.retractRightTuple( f1.getFirstRightTuple(), context, ksession ); assertTrue( bm.getSegmentMemory().isSegmentLinked() ); //assertFalse( bm.getSegmentMemory().isSigmentLinked() ); // check retraction unlinks again }
@Test public void testAllLinkedInWithExistsNodesOnly() { setUp( EXISTS_NODE ); assertEquals( ExistsNode.class, n3.getClass() ); // make sure it created ExistsNodes KieBaseConfiguration kconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(kconf); StatefulKnowledgeSessionImpl ksession = (StatefulKnowledgeSessionImpl)kBase.newKieSession(); DefaultFactHandle f1 = (DefaultFactHandle) ksession.insert( "test1" ); n3.assertObject( f1, context, ksession ); BetaMemory bm = (BetaMemory) ksession.getNodeMemory( n3 ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n4.assertObject( f1, context, ksession ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n5.assertObject( f1, context, ksession ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n6.assertObject( f1, context, ksession ); assertTrue( bm.getSegmentMemory().isSegmentLinked() ); // only after all 4 nodes are populated, is the segment linked in }
@Test public void testAllLinkedInWithJoinNodesOnly() { setUp( JOIN_NODE ); assertEquals( JoinNode.class, n3.getClass() ); // make sure it created JoinNodes KieBaseConfiguration kconf = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(); InternalKnowledgeBase kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(kconf); StatefulKnowledgeSessionImpl ksession = (StatefulKnowledgeSessionImpl)kBase.newKieSession(); DefaultFactHandle f1 = (DefaultFactHandle) ksession.insert( "test1" ); n3.assertObject( f1, context, ksession ); BetaMemory bm = (BetaMemory) ksession.getNodeMemory( n3 ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n4.assertObject( f1, context, ksession ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n5.assertObject( f1, context, ksession ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); n6.assertObject( f1, context, ksession ); assertTrue( bm.getSegmentMemory().isSegmentLinked() ); // only after all 4 nodes are populated, is the segment linked in }
List<PathMemory> list; PathMemory rtn1Rs = (PathMemory) wm.getNodeMemory( rtn1 ); PathMemory rtn2Rs = (PathMemory) wm.getNodeMemory( rtn2 ); PathMemory rtn3Rs = (PathMemory) wm.getNodeMemory( rtn3 ); bm = (BetaMemory) wm.getNodeMemory( n2 ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); bm = (BetaMemory) wm.getNodeMemory( n5 ); assertFalse( bm.getSegmentMemory().isSegmentLinked() );
List<PathMemory> list; PathMemory rtn1Rs = (PathMemory) wm.getNodeMemory( rtn1 ); PathMemory rtn2Rs = (PathMemory) wm.getNodeMemory( rtn2 ); PathMemory rtn3Rs = (PathMemory) wm.getNodeMemory( rtn3 ); bm = (BetaMemory) wm.getNodeMemory( n2 ); assertFalse( bm.getSegmentMemory().isSegmentLinked() ); bm = (BetaMemory) wm.getNodeMemory( n5 ); assertFalse( bm.getSegmentMemory().isSegmentLinked() );
createSegmentMemory( n2, ksession ); BetaMemory bm = (BetaMemory) ksession.getNodeMemory( n1 ); assertNull( bm.getSegmentMemory() ); bm = (BetaMemory) ksession.getNodeMemory( n3 ); assertNull( bm.getSegmentMemory() ); bm = (BetaMemory) ksession.getNodeMemory( n4 ); assertNull( bm.getSegmentMemory() ); bm = (BetaMemory) ksession.getNodeMemory( n2 ); assertEquals( 1, bm.getNodePosMaskBit() ); assertEquals( 1, bm.getSegmentMemory().getAllLinkedMaskTest() );
n1.assertObject( fh1, context, ksession ); LiaNodeMemory liaMem = (LiaNodeMemory) ksession.getNodeMemory( liaNode ); assertEquals( 1, liaMem.getNodePosMaskBit() ); assertEquals( 3, liaMem.getSegmentMemory().getAllLinkedMaskTest() ); BetaMemory bm1 = (BetaMemory) ksession.getNodeMemory( n1 ); assertEquals( 2, bm1.getNodePosMaskBit() ); assertEquals( 3, bm1.getSegmentMemory().getAllLinkedMaskTest() );
@Test public void testMemory() { when( constraint.isAllowedCachedLeft( any( ContextEntry.class ), any( InternalFactHandle.class ) ) ).thenReturn( true ); when( constraint.isAllowedCachedRight( any( LeftTupleImpl.class ), any( ContextEntry.class ) ) ).thenReturn( true ); final StatefulKnowledgeSessionImpl workingMemory = new StatefulKnowledgeSessionImpl( 1L, (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase()); final MockObjectSource objectSource = new MockObjectSource( 1 ); final MockTupleSource tupleSource = new MockTupleSource( 1 ); InternalKnowledgeBase kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(); BuildContext buildContext = new BuildContext( kBase, kBase.getReteooBuilder().getIdGenerator() ); final JoinNode joinNode = new JoinNode( 2, tupleSource, objectSource, EmptyBetaConstraints.getInstance(), buildContext ); final BetaMemory memory = (BetaMemory) workingMemory .getNodeMemory( joinNode ); assertNotNull( memory ); }
@Test public void testMemory() { final StatefulKnowledgeSessionImpl workingMemory = new StatefulKnowledgeSessionImpl( 1L, (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase() ); final MockTupleSource source = new MockTupleSource( 12 ); final EvalConditionNode node = new EvalConditionNode( 18, source, new MockEvalCondition( true ), buildContext ); final EvalMemory memory = (EvalMemory) workingMemory.getNodeMemory( node ); assertNotNull( memory ); }
this.memory = (BetaMemory) this.workingMemory.getNodeMemory( this.node );
Iterator<InternalFactHandle> it = ((ObjectTypeNodeMemory) sessionImpl.getNodeMemory( droolsQueryNode )).iterator(); assertFalse(it.hasNext());
this.workingMemory.getNodeMemory( node );
this.memory = (BetaMemory) this.workingMemory.getNodeMemory(this.node);