final OrDescr or = (OrDescr) rule.getLhs().getDescrs().get( 0 );
assertEquals( 2,
or.getDescrs().size() );
final PatternDescr leftPattern = (PatternDescr) or.getDescrs().get( 0 );
assertEquals( "Person",
leftPattern.getObjectType() );
assertEquals( "foo",
leftPattern.getIdentifier() );
final PatternDescr rightPattern = (PatternDescr) or.getDescrs().get( 1 );
assertEquals( "Person",
rightPattern.getObjectType() );
assertEquals( "foo",
rightPattern.getIdentifier() );
final PatternDescr cheeseDescr = (PatternDescr) rule.getLhs().getDescrs().get( 1 );
assertEquals( "Cheese",
cheeseDescr.getObjectType() );
assertEquals( null,
cheeseDescr.getIdentifier() );
assertEqualsIgnoreWhitespace( "System.out.println( \"Mark and Michael\" + bar );",
(String) rule.getConsequence() );
assertFalse( parser.hasErrors() );