[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