[jboss-svn-commits] JBL Code SVN: r19821 - labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 1 18:05:56 EDT 2008


Author: tirelli
Date: 2008-05-01 18:05:56 -0400 (Thu, 01 May 2008)
New Revision: 19821

Modified:
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MarshallingTest.java
Log:
JBRULES-1521: adding test case

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MarshallingTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MarshallingTest.java	2008-05-01 21:50:44 UTC (rev 19820)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MarshallingTest.java	2008-05-01 22:05:56 UTC (rev 19821)
@@ -23,13 +23,13 @@
 import org.drools.RuleBaseFactory;
 import org.drools.StatefulSession;
 import org.drools.WorkingMemory;
-import org.drools.util.DroolsStreamUtils;
 import org.drools.common.InternalFactHandle;
 import org.drools.compiler.PackageBuilder;
 import org.drools.compiler.PackageBuilderConfiguration;
 import org.drools.rule.MapBackedClassLoader;
 import org.drools.rule.Package;
 import org.drools.rule.Rule;
+import org.drools.util.DroolsStreamUtils;
 
 public class MarshallingTest extends TestCase {
 
@@ -847,12 +847,36 @@
 
         serializedSession = null;
         serializedRulebase = null;
-
         serializedSession = DroolsStreamUtils.streamOut( session );
         serializedRulebase = DroolsStreamUtils.streamOut( ruleBase );
 
         session.dispose();
-
+        // Deserialize the rulebase and the session 
+        ruleBase = (RuleBase) DroolsStreamUtils.streamIn( serializedRulebase );
+        session = ruleBase.newStatefulSession( new ByteArrayInputStream( serializedSession ) );    //  throws java.lang.ClassNotFoundException Exception
+        results = (List) session.getGlobal( "results" );
+             
+        InternalFactHandle stilton5 = (InternalFactHandle) session.insert( new Cheese( "stilton", 30 ) );
+        InternalFactHandle brie5 = (InternalFactHandle) session.insert( new Cheese( "brie", 30 ) );
+        InternalFactHandle bob7 = (InternalFactHandle) session.insert( new Person( "bob", 30 ) );
+        InternalFactHandle bob8 = (InternalFactHandle) session.insert( new Person( "bob", 40 ) );
+        session.fireAllRules();
+ 
+        assertEquals( 8,
+                      results.size() );
+        assertEquals( bob8.getObject(),
+                      results.get( 6 ) );
+        assertEquals( bob7.getObject(),
+                      results.get( 7 ) );
+       
+        serializedSession = null;
+        serializedRulebase = null;
+       
+        serializedSession = DroolsStreamUtils.streamOut( session );
+        serializedRulebase = DroolsStreamUtils.streamOut( ruleBase );
+       
+        session.dispose();        
+       
     }
 
     /**




More information about the jboss-svn-commits mailing list