From: <jbo...@li...> - 2006-03-16 10:32:30
|
Author: mic...@jb... Date: 2006-03-16 05:32:19 -0500 (Thu, 16 Mar 2006) New Revision: 2970 Added: trunk/labs/jbossrules/drools-compiler/src/test/resources/org/drools/lang/with_predicate.drl Modified: trunk/labs/jbossrules/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java Log: JBRULES-65 Modified: trunk/labs/jbossrules/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java =================================================================== --- trunk/labs/jbossrules/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java 2006-03-16 09:38:19 UTC (rev 2969) +++ trunk/labs/jbossrules/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java 2006-03-16 10:32:19 UTC (rev 2970) @@ -20,6 +20,7 @@ import org.drools.lang.descr.NotDescr; import org.drools.lang.descr.OrDescr; import org.drools.lang.descr.PackageDescr; +import org.drools.lang.descr.PredicateDescr; import org.drools.lang.descr.ReturnValueDescr; import org.drools.lang.descr.RuleDescr; @@ -495,6 +496,25 @@ assertEquals( "name", retval.getFieldName()); assertEquals("==", retval.getEvaluator()); } + + public void testWithPredicate() throws Exception { + RuleParser parser = parseResource( "with_predicate.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()); + ColumnDescr col = (ColumnDescr) rule.getLhs().getDescrs().get( 0 ); + assertEquals(1, col.getDescrs().size()); + + PredicateDescr pred = (PredicateDescr) col.getDescrs().get( 0 ); + assertEquals("age", pred.getFieldName()); + assertEquals("$age2", pred.getDeclaration()); + assertEqualsIgnoreWhitespace( "$age2 == $age1+2", pred.getText()); + + } private RuleParser parse(String text) throws Exception { parser = newParser( newTokenStream( newLexer( newCharStream( text ) ) ) ); Added: trunk/labs/jbossrules/drools-compiler/src/test/resources/org/drools/lang/with_predicate.drl =================================================================== --- trunk/labs/jbossrules/drools-compiler/src/test/resources/org/drools/lang/with_predicate.drl 2006-03-16 09:38:19 UTC (rev 2969) +++ trunk/labs/jbossrules/drools-compiler/src/test/resources/org/drools/lang/with_predicate.drl 2006-03-16 10:32:19 UTC (rev 2970) @@ -0,0 +1,7 @@ + +rule simple_rule + when + Person( $age2:age && ($age2 == $age1+2 ) ) + then + foo bar +end \ No newline at end of file Property changes on: trunk/labs/jbossrules/drools-compiler/src/test/resources/org/drools/lang/with_predicate.drl ___________________________________________________________________ Name: svn:eol-style + native |