[jboss-svn-commits] JBL Code SVN: r16581 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools/testframework and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Nov 14 01:38:36 EST 2007
Author: michael.neale at jboss.com
Date: 2007-11-14 01:38:35 -0500 (Wed, 14 Nov 2007)
New Revision: 16581
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/Scenario.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioTest.java
Log:
JBRULES-1271 test scenario stuff
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/Scenario.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/Scenario.java 2007-11-14 06:19:52 UTC (rev 16580)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/Scenario.java 2007-11-14 06:38:35 UTC (rev 16581)
@@ -108,6 +108,30 @@
}
return m;
}
+
+ /**
+ * This will return a list of fact names that are in scope (including globals).
+ */
+ public List getFactNamesInScope(ExecutionTrace ex) {
+ List l = new ArrayList();
+ int p = this.fixtures.indexOf(ex);
+ for (int i = 0; i < p; i++) {
+ Fixture f = (Fixture) fixtures.get(i);
+ if (f instanceof FactData) {
+ FactData fd = (FactData) f;
+ l.add(fd.name);
+ } else if (f instanceof RetractFact) {
+ RetractFact rf = (RetractFact) f;
+ l.remove(rf.name);
+ }
+ }
+
+ for (Iterator iterator = globals.iterator(); iterator.hasNext();) {
+ FactData f = (FactData) iterator.next();
+ l.add(f.name);
+ }
+ return l;
+ }
}
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioTest.java 2007-11-14 06:19:52 UTC (rev 16580)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioTest.java 2007-11-14 06:38:35 UTC (rev 16581)
@@ -1,8 +1,12 @@
package org.drools.testframework;
+import java.util.List;
import java.util.Map;
+import org.drools.brms.client.modeldriven.testing.ExecutionTrace;
import org.drools.brms.client.modeldriven.testing.FactData;
+import org.drools.brms.client.modeldriven.testing.FieldData;
+import org.drools.brms.client.modeldriven.testing.RetractFact;
import org.drools.brms.client.modeldriven.testing.Scenario;
import org.drools.brms.client.modeldriven.testing.VerifyRuleFired;
@@ -69,4 +73,34 @@
}
+ public void testVariablesInScope() {
+ Scenario sc = new Scenario();
+ sc.globals.add(new FactData("X", "x", new FieldData[0], false));
+
+ sc.fixtures.add(new FactData("Q", "q", new FieldData[0], true));
+ sc.fixtures.add(new FactData("Z", "z", new FieldData[0], false));
+ ExecutionTrace ex1 = new ExecutionTrace();
+
+ sc.fixtures.add(ex1);
+ sc.fixtures.add(new RetractFact("z"));
+ sc.fixtures.add(new FactData("Y", "y", new FieldData[0], false));
+
+ ExecutionTrace ex2 = new ExecutionTrace();
+ sc.fixtures.add(ex2);
+
+ List l = sc.getFactNamesInScope(ex1);
+ assertEquals(3, l.size());
+ assertEquals("q", l.get(0));
+ assertEquals("z", l.get(1));
+ assertEquals("x", l.get(2));
+
+ l = sc.getFactNamesInScope(ex2);
+ assertEquals(3, l.size());
+ assertEquals("q", l.get(0));
+ assertEquals("y", l.get(1));
+ assertEquals("x", l.get(2));
+
+
+ }
+
}
More information about the jboss-svn-commits
mailing list