[jboss-svn-commits] JBL Code SVN: r16345 - labs/jbossrules/branches/4.0.x/drools-compiler/src/test/java/org/drools/lang/dsl.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Nov 5 09:56:23 EST 2007


Author: tirelli
Date: 2007-11-05 09:56:23 -0500 (Mon, 05 Nov 2007)
New Revision: 16345

Modified:
   labs/jbossrules/branches/4.0.x/drools-compiler/src/test/java/org/drools/lang/dsl/DSLMappingFileTest.java
Log:
JBRULES-1312: adding test case

Modified: labs/jbossrules/branches/4.0.x/drools-compiler/src/test/java/org/drools/lang/dsl/DSLMappingFileTest.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-compiler/src/test/java/org/drools/lang/dsl/DSLMappingFileTest.java	2007-11-05 14:55:28 UTC (rev 16344)
+++ labs/jbossrules/branches/4.0.x/drools-compiler/src/test/java/org/drools/lang/dsl/DSLMappingFileTest.java	2007-11-05 14:56:23 UTC (rev 16345)
@@ -107,6 +107,40 @@
 
     }
 
+    public void testParseFileWithEscapes() {
+        String file = "[then]TEST=System.out.println(\"DO_SOMETHING\");\n" + 
+                      "[when]code {code1} occurs and sum of all digit not equal \\( {code2} \\+ {code3} \\)=AAAA( cd1 == {code1}, cd2 != ( {code2} + {code3} ))\n" + 
+                      "[when]code {code1} occurs=BBBB\n";
+        try {
+            final Reader reader = new StringReader( file );
+            this.file = new DSLMappingFile();
+
+            final boolean parsingResult = this.file.parseAndLoad( reader );
+            reader.close();
+
+            assertTrue( this.file.getErrors().toString(),
+                        parsingResult );
+            assertTrue( this.file.getErrors().isEmpty() );
+            
+            final String LHS = "code 1041 occurs and sum of all digit not equal ( 1034 + 1035 )";
+            final String rule = "rule \"x\"\nwhen\n" + LHS + "\nthen\nTEST\nend";
+
+            DefaultExpander de = new DefaultExpander();
+            de.addDSLMapping(this.file.getMapping());
+                    
+            final String ruleAfterExpansion = de.expand(rule);
+            
+            final String expected = "rule \"x\"\nwhen\nAAAA( cd1 == 1041, cd2 != ( 1034 + 1035 ))\nthen\nSystem.out.println(\"DO_SOMETHING\");\nend\n";
+            
+            assertEquals( expected, ruleAfterExpansion );
+            
+        } catch ( final IOException e ) {
+            e.printStackTrace();
+            fail( "Should not raise exception " );
+        }
+
+    }
+
     public void testParseFileWithEscaptedEquals() {
         String file = "[when][]something:\\={value}=Attribute( something == \"{value}\" )";
         try {




More information about the jboss-svn-commits mailing list