@Test
public void testSubpatternSubsumption1() throws Exception {
VerifierBuilder vBuilder = VerifierBuilderFactory.newVerifierBuilder();
Verifier verifier = vBuilder.newVerifier();
verifier.addResourcesToVerify( ResourceFactory.newClassPathResource( "SubsumptantSubPatterns1.drl",
getClass() ),
ResourceType.DRL );
// for ( VerifierError error : verifier.getMissingClasses() ) {
// System.out.println( error.getMessage() );
// }
assertFalse( verifier.hasErrors() );
boolean noProblems = verifier.fireAnalysis();
if ( !noProblems ) {
for ( VerifierError error : verifier.getErrors() ) {
System.out.println( error.getMessage() );
}
}
Collection<Object> subsumptionList = ((VerifierImpl) verifier).getKnowledgeSession().getObjects( new ClassObjectFilter( Subsumption.class ) );
int count = 0;
for ( Object object : subsumptionList ) {
// System.out.println( " * " + ((Subsumption) object) );
if ( ((VerifierComponent) ((Subsumption) object).getLeft()).getVerifierComponentType().equals( VerifierComponentType.SUB_PATTERN ) ) {
// System.out.println( " ** " + ((SubPattern) ((Subsumption) object).getLeft()).getItems() + " - " + ((SubPattern) ((Subsumption) object).getRight()).getItems() );
count++;
}
}
assertEquals( 1,
count );
verifier.dispose();
}