[jboss-svn-commits] JBL Code SVN: r14313 - 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
Thu Aug 16 12:45:36 EDT 2007


Author: tirelli
Date: 2007-08-16 12:45:35 -0400 (Thu, 16 Aug 2007)
New Revision: 14313

Added:
   labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_IterateObjects.drl
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/StatefulSessionTest.java
Log:
Adding integration test for support case: https://na1.salesforce.com/50030000003QHg6

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	2007-08-16 16:09:53 UTC (rev 14312)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java	2007-08-16 16:45:35 UTC (rev 14313)
@@ -18,7 +18,6 @@
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.FileReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
 import java.io.ObjectInput;
@@ -30,6 +29,7 @@
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -68,6 +68,7 @@
 import org.drools.TestParam;
 import org.drools.WorkingMemory;
 import org.drools.Cheesery.Maturity;
+import org.drools.base.ClassObjectFilter;
 import org.drools.common.AbstractWorkingMemory;
 import org.drools.compiler.DrlParser;
 import org.drools.compiler.DroolsError;
@@ -3584,4 +3585,29 @@
         assertEquals( first42, list2.get( 5 ) );          
     }    
 
+    public void testIterateObjects() throws Exception {
+        final PackageBuilder builder = new PackageBuilder();
+        builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_IterateObjects.drl" ) ) );
+        final Package pkg = builder.getPackage();
+
+        final RuleBase ruleBase = getRuleBase();
+        ruleBase.addPackage( pkg );
+        final WorkingMemory workingMemory = ruleBase.newStatefulSession();
+
+        final List results = new ArrayList();
+        workingMemory.setGlobal( "results",
+                                 results );
+        
+        workingMemory.insert( new Person( "Bob", "Stilton" ) );
+
+        workingMemory.fireAllRules();
+
+        Iterator events = workingMemory.iterateObjects(new ClassObjectFilter(Cheese.class));
+        
+        assertTrue( events.hasNext() );
+        assertEquals( 1,
+                      results.size() );
+        assertEquals( results.get( 0 ), events.next() );
+    }
+
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java	2007-08-16 16:09:53 UTC (rev 14312)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java	2007-08-16 16:45:35 UTC (rev 14313)
@@ -4,21 +4,18 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import junit.framework.TestCase;
+
 import org.drools.Cheese;
 import org.drools.FactHandle;
 import org.drools.RuleBase;
 import org.drools.RuleBaseConfiguration;
 import org.drools.RuleBaseFactory;
 import org.drools.StatefulSession;
-import org.drools.StatelessSession;
-import org.drools.StatelessSessionResult;
-import org.drools.WorkingMemory;
 import org.drools.compiler.PackageBuilder;
 import org.drools.concurrent.Future;
 import org.drools.rule.Package;
 
-import junit.framework.TestCase;
-
 public class StatefulSessionTest extends TestCase {
     final List list = new ArrayList();
 

Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_IterateObjects.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_IterateObjects.drl	                        (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_IterateObjects.drl	2007-08-16 16:45:35 UTC (rev 14313)
@@ -0,0 +1,11 @@
+package org.drools;
+
+global java.util.List results;
+
+rule "test iterate objects"
+when
+    Person( $likes : likes )
+then
+    results.add( new Cheese( $likes, 10 ) );
+    insert( results.get(0) );
+end




More information about the jboss-svn-commits mailing list