[jboss-svn-commits] JBL Code SVN: r18978 - labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Mar 14 11:43:13 EDT 2008
Author: mingjin
Date: 2008-03-14 11:43:13 -0400 (Fri, 14 Mar 2008)
New Revision: 18978
Modified:
labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MVELTest.java
Log:
added serialization for all rulebase
Modified: labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MVELTest.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MVELTest.java 2008-03-14 15:39:54 UTC (rev 18977)
+++ labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MVELTest.java 2008-03-14 15:43:13 UTC (rev 18978)
@@ -1,29 +1,12 @@
package org.drools.integrationtests;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.ObjectOutputStream;
-import java.io.Reader;
-import java.io.Serializable;
-import java.io.ObjectOutput;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-
import junit.framework.Assert;
import junit.framework.TestCase;
-
import org.drools.Cheese;
import org.drools.Person;
import org.drools.RuleBase;
import org.drools.RuleBaseFactory;
import org.drools.WorkingMemory;
-import org.drools.reteoo.ReteooRuleBase;
-import org.drools.common.DroolsObjectInputStream;
-import org.drools.common.DroolsObjectOutputStream;
import org.drools.compiler.DrlParser;
import org.drools.compiler.DroolsParserException;
import org.drools.compiler.PackageBuilder;
@@ -32,26 +15,21 @@
import org.drools.util.DateUtils;
import org.mvel.MVEL;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+
public class MVELTest extends TestCase {
public void testHelloWorld() throws Exception {
// read in the source
final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "test_mvel.drl" ) );
RuleBase ruleBase = loadRuleBase( reader );
- // Bellow lines are a way to make sure serialization is fine
- // start of serialization block
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- ObjectOutput obj = new DroolsObjectOutputStream( out );
- obj.writeObject( ruleBase );
- obj.close();
-
- byte[] buf = out.toByteArray();
-
- DroolsObjectInputStream in = new DroolsObjectInputStream( new ByteArrayInputStream( buf ),
- ((ReteooRuleBase)ruleBase).getCompositePackageClassLoader());
- ruleBase = (RuleBase) in.readObject();
- // end of serialization block
-
final WorkingMemory workingMemory = ruleBase.newStatefulSession();
final List list = new ArrayList();
@@ -81,8 +59,10 @@
builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_LocalVariableMVELConsequence.drl" ) ) );
final Package pkg = builder.getPackage();
- final RuleBase ruleBase = getRuleBase();
+ RuleBase ruleBase = getRuleBase();
ruleBase.addPackage( pkg );
+ ruleBase = SerializationHelper.serializeObject(ruleBase);
+
final WorkingMemory workingMemory = ruleBase.newStatefulSession();
final List list = new ArrayList();
@@ -113,9 +93,10 @@
try {
final Package pkg = builder.getPackage();
- final RuleBase ruleBase = getRuleBase();
+ RuleBase ruleBase = getRuleBase();
ruleBase.addPackage( pkg );
+ ruleBase = SerializationHelper.serializeObject(ruleBase);
fail( "Should have raised exception because of the duplicate variable definition");
} catch (Exception e) {
// success
@@ -145,8 +126,9 @@
final Package pkg = builder.getPackage();
// add the package to a rulebase
- final RuleBase ruleBase = getRuleBase();
+ RuleBase ruleBase = getRuleBase();
ruleBase.addPackage( pkg );
+ ruleBase = SerializationHelper.serializeObject(ruleBase);
// load up the rulebase
return ruleBase;
}
More information about the jboss-svn-commits
mailing list