[jboss-svn-commits] JBL Code SVN: r22576 - 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
Wed Sep 10 10:00:44 EDT 2008
Author: KrisVerlaenen
Date: 2008-09-10 10:00:44 -0400 (Wed, 10 Sep 2008)
New Revision: 22576
Modified:
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MarshallingTest.java
Log:
Added failing accumulate tests
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-09-10 13:56:00 UTC (rev 22575)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MarshallingTest.java 2008-09-10 14:00:44 UTC (rev 22576)
@@ -22,6 +22,7 @@
import org.drools.FactA;
import org.drools.FactB;
import org.drools.FactC;
+import org.drools.Message;
import org.drools.Person;
import org.drools.Primitives;
import org.drools.RuleBase;
@@ -30,7 +31,6 @@
import org.drools.StatefulSession;
import org.drools.WorkingMemory;
import org.drools.base.ClassObjectType;
-import org.drools.base.MapGlobalResolver;
import org.drools.common.BaseNode;
import org.drools.common.InternalFactHandle;
import org.drools.common.InternalRuleBase;
@@ -39,6 +39,7 @@
import org.drools.marshalling.DefaultMarshaller;
import org.drools.marshalling.Marshaller;
import org.drools.marshalling.RuleBaseNodes;
+import org.drools.process.instance.ProcessInstance;
import org.drools.reteoo.ObjectTypeNode;
import org.drools.reteoo.RuleTerminalNode;
import org.drools.rule.MapBackedClassLoader;
@@ -1907,9 +1908,67 @@
list.get( 2 ) );
}
-
- protected RuleBase getRuleBase() throws Exception {
+ public void testAccumulate() throws Exception {
+ PackageBuilder builder = new PackageBuilder();
+ Reader source = new StringReader(
+ "package org.drools\n" +
+ "\n" +
+ "import org.drools.Message\n" +
+ "\n" +
+ "rule MyRule\n" +
+ " when\n" +
+ " Number( intValue >= 5 ) from accumulate ( m: Message( ), count( m ) )\n" +
+ " then\n" +
+ " System.out.println(\"Found messages\");\n" +
+ "end");
+ builder.addPackageFromDrl(source);
+ Package pkg = builder.getPackage();
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+ ruleBase.addPackage( pkg );
+ StatefulSession session = ruleBase.newStatefulSession();
+
+ session.insert(new Message());
+ session = getSerialisedStatefulSession( session );
+ session.insert(new Message());
+ session.insert(new Message());
+ session.insert(new Message());
+ session.insert(new Message());
+
+ assertEquals(1, session.getAgenda().getActivations().length);
+ }
+ public void testAccumulate2() throws Exception {
+ PackageBuilder builder = new PackageBuilder();
+ Reader source = new StringReader(
+ "package org.drools\n" +
+ "\n" +
+ "import org.drools.Message\n" +
+ "\n" +
+ "rule MyRule\n" +
+ " when\n" +
+ " Number( intValue >= 5 ) from accumulate ( m: Message( ), count( m ) )\n" +
+ " then\n" +
+ " System.out.println(\"Found messages\");\n" +
+ "end");
+ builder.addPackageFromDrl(source);
+ Package pkg = builder.getPackage();
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+ ruleBase.addPackage( pkg );
+ StatefulSession session = ruleBase.newStatefulSession();
+ session.fireAllRules();
+
+ session = getSerialisedStatefulSession( session );
+ session.insert(new Message());
+ session.insert(new Message());
+ session.insert(new Message());
+ session.insert(new Message());
+ session.insert(new Message());
+
+ assertEquals(1, session.getAgenda().getActivations().length);
+ }
+
+ protected RuleBase getRuleBase() throws Exception {
+
return RuleBaseFactory.newRuleBase( RuleBase.RETEOO,
null );
}
More information about the jboss-svn-commits
mailing list