[jboss-svn-commits] JBL Code SVN: r24797 - in labs/jbossrules/trunk/drools-compiler/src/test: resources/org/drools/integrationtests and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Jan 19 14:23:25 EST 2009


Author: joe.white at recondotech.com
Date: 2009-01-19 14:23:24 -0500 (Mon, 19 Jan 2009)
New Revision: 24797

Added:
   labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_TestMapVariableRef.drl
Modified:
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
Log:
JBRULES-1926 Added test for listOfMaps defect

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java	2009-01-19 19:04:06 UTC (rev 24796)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java	2009-01-19 19:23:24 UTC (rev 24797)
@@ -5906,6 +5906,37 @@
 		assertEquals("Hello World", list.get(0));
     }
 
+    //FIXME
+    public void testListOfMaps(){
+    	KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
+		kbuilder.add(ResourceFactory.newClassPathResource("test_TestMapVariableRef.drl", getClass()), ResourceType.DRL);
+		KnowledgeBuilderErrors errors = kbuilder.getErrors();
+		if (errors.size() > 0) {
+			for (KnowledgeBuilderError error: errors) {
+				System.err.println(error);
+			}
+			throw new IllegalArgumentException("Could not parse knowledge.");
+		}
+		KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
+		kbase.addKnowledgePackages(kbuilder.getKnowledgePackages());
+		StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
+		List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
+		
+		Map mapOne = new HashMap<String,Object>();
+		Map mapTwo = new HashMap<String,Object>();
+		
+		mapOne.put("MSG", "testMessage");
+		mapTwo.put("MSGTWO", "testMessage");
+		
+		list.add(mapOne);
+		list.add(mapTwo);
+		ksession.insert(list);
+		ksession.fireAllRules();
+		
+		assertEquals(3, list.size());
+		
+    }
+    
     public void testKnowledgeContextMVEL() {
     	KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
 		kbuilder.add(ResourceFactory.newClassPathResource("test_KnowledgeContextMVEL.drl", getClass()), ResourceType.DRL);
@@ -5926,5 +5957,7 @@
 		assertEquals(1, list.size());
 		assertEquals("Hello World", list.get(0));
     }
+    
 
+
 }

Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_TestMapVariableRef.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_TestMapVariableRef.drl	                        (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_TestMapVariableRef.drl	2009-01-19 19:23:24 UTC (rev 24797)
@@ -0,0 +1,18 @@
+package testListOfMaps;
+
+import java.util.Map;
+import java.util.HashMap;
+import java.util.List;
+
+dialect "mvel"
+    
+rule "check message"
+    when
+    	list : List()
+    	Map( $msg: this['MSG'] ) from list
+    	Map( this['MSGTWO']== $msg) from list
+    then
+		Map result = new HashMap();
+		list.add(result);
+    end
+    
\ No newline at end of file




More information about the jboss-svn-commits mailing list