final CompositeObjectSinkAdapter ad = new CompositeObjectSinkAdapter();
InternalReadAccessor extractor = store.getReader( Cheese.class,
"charObjectType",
this.getClass().getClassLoader() );
final MvelConstraint lit = new MvelConstraintTestUtil( "charObjectType == 65",
new LongFieldImpl( 65 ),
extractor );
final AlphaNode al = new AlphaNode( buildContext.getNextId(),
lit,
new MockObjectSource( buildContext.getNextId() ),
buildContext );
ad.addObjectSink( al );
assertNull( ad.otherSinks );
assertNotNull( ad.hashedFieldIndexes );
assertEquals( 1,
ad.hashableSinks.size() );
assertEquals( al,
ad.getSinks()[0] );
final MvelConstraint lit2 = new MvelConstraintTestUtil( "charObjectType == 66",
new LongFieldImpl( 66 ),
extractor );
final AlphaNode al2 = new AlphaNode( buildContext.getNextId(),
lit2,
new MockObjectSource( buildContext.getNextId() ),
buildContext );
ad.addObjectSink( al2 );
assertNull( ad.hashedSinkMap );
assertEquals( 2,
ad.hashableSinks.size() );
final MvelConstraint lit3 = new MvelConstraintTestUtil( "charObjectType == 67",
new LongFieldImpl( 67 ),
extractor );
final AlphaNode al3 = new AlphaNode( buildContext.getNextId(),
lit3,