[jboss-svn-commits] JBL Code SVN: r22812 - 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
Tue Sep 16 09:30:06 EDT 2008


Author: tirelli
Date: 2008-09-16 09:30:06 -0400 (Tue, 16 Sep 2008)
New Revision: 22812

Added:
   labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CollectResultConstraints.drl
Modified:
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/FirstOrderLogicTest.java
Log:
JBRULES-1766: Adding integration test

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/FirstOrderLogicTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/FirstOrderLogicTest.java	2008-09-16 13:12:13 UTC (rev 22811)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/FirstOrderLogicTest.java	2008-09-16 13:30:06 UTC (rev 22812)
@@ -199,6 +199,47 @@
                              results.size() );
     }
 
+    public void testCollectResultConstraints() throws Exception {
+
+        // read in the source
+        final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "test_CollectResultConstraints.drl" ) );
+        RuleBase ruleBase = loadRuleBase( reader );
+
+        StatefulSession wm = ruleBase.newStatefulSession();
+        List results = new ArrayList();
+
+        wm.setGlobal( "results",
+                      results );
+
+        wm.insert( new Cheese( "stilton",
+                               10 ) );
+        wm = SerializationHelper.getSerialisedStatefulSession( wm );
+        results = (List) wm.getGlobal( "results" );
+        
+        wm.fireAllRules();
+
+        Assert.assertEquals( 1,
+                             results.size() );
+        Assert.assertEquals( 1,
+                             ((Collection) results.get( 0 )).size() );
+        
+        wm.insert( new Cheese( "stilton",
+                               7 ) );
+        wm.insert( new Cheese( "stilton",
+                               8 ) );
+        wm.fireAllRules();
+
+        wm = SerializationHelper.getSerialisedStatefulSession( wm );
+        results = (List) wm.getGlobal( "results" );
+        
+        Assert.assertEquals( 1,
+                             results.size() );
+        Assert.assertEquals( 1,
+                             ((Collection) results.get( 0 )).size() );
+        Assert.assertEquals( ArrayList.class.getName(),
+                             results.get( 0 ).getClass().getName() );
+    }
+
     public void testExistsWithBinding() throws Exception {
         final PackageBuilder builder = new PackageBuilder();
         builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_ExistsWithBindings.drl" ) ) );

Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CollectResultConstraints.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CollectResultConstraints.drl	                        (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_CollectResultConstraints.drl	2008-09-16 13:30:06 UTC (rev 22812)
@@ -0,0 +1,13 @@
+package org.drools.test;
+
+import org.drools.Cheese;
+import java.util.ArrayList;
+
+global java.util.List results;
+
+rule "Collect Test" salience 70
+    when
+    	$cheeseList  : ArrayList(size == 1) from collect( Cheese( ) );
+    then
+        results.add($cheeseList);
+end




More information about the jboss-svn-commits mailing list