From: <jbo...@li...> - 2006-04-23 01:55:29
|
Author: mic...@jb... Date: 2006-04-22 21:55:22 -0400 (Sat, 22 Apr 2006) New Revision: 3909 Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/or_binding_with_brackets.drl Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java Log: JBRULES-197 Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java =================================================================== --- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java 2006-04-23 01:34:43 UTC (rev 3908) +++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java 2006-04-23 01:55:22 UTC (rev 3909) @@ -903,6 +903,35 @@ assertFalse( parser.hasErrors() ); } + public void testOrBindingWithBrackets() throws Exception { + RuleParser parser = parseResource( "or_binding_with_brackets.drl" ); + parser.compilation_unit(); + + PackageDescr pack = parser.getPackageDescr(); + assertEquals(1, pack.getRules().size()); + RuleDescr rule = (RuleDescr) pack.getRules().get( 0 ); + assertEquals(1, rule.getLhs().getDescrs().size()); + + assertEquals(1, rule.getLhs().getDescrs().size()); + + OrDescr or = (OrDescr) rule.getLhs().getDescrs().get( 0 ); + assertEquals( 2, or.getDescrs().size() ); + + //first fact + ColumnDescr firstFact = (ColumnDescr) or.getDescrs().get( 0 ); + assertEquals("Person", firstFact.getObjectType()); + assertEquals("foo", firstFact.getIdentifier()); + + //second "option" + ColumnDescr secondFact = (ColumnDescr) or.getDescrs().get( 0 ); + assertEquals("Person", secondFact.getObjectType()); + assertEquals( "foo", secondFact.getIdentifier() ); + + assertEqualsIgnoreWhitespace( "System.out.println( \"Mark and Michael\" + bar );", rule.getConsequence()); + + assertFalse( parser.hasErrors() ); + } + /** */ public void testBracketsPrecedence() throws Exception { RuleParser parser = parseResource( "brackets_precedence.drl" ); Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/or_binding_with_brackets.drl =================================================================== --- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/or_binding_with_brackets.drl 2006-04-23 01:34:43 UTC (rev 3908) +++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/or_binding_with_brackets.drl 2006-04-23 01:55:22 UTC (rev 3909) @@ -0,0 +1,6 @@ +rule simple_rule + when + foo : ( Person(name == "mark") or Person(type == "fan") ) + then + System.out.println( "Mark and Michael" + bar ); +end \ No newline at end of file Property changes on: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/or_binding_with_brackets.drl ___________________________________________________________________ Name: svn:eol-style + native |