[jboss-svn-commits] JBL Code SVN: r15997 - in labs/jbossrules/trunk/drools-compiler/src: main/java/org/drools/testframework and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Oct 23 00:11:27 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-10-23 00:11:27 -0400 (Tue, 23 Oct 2007)
New Revision: 15997
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/VerifyRuleFired.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java
Log:
JBRULES-1271 execution trace stuff
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/VerifyRuleFired.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/VerifyRuleFired.java 2007-10-23 02:01:01 UTC (rev 15996)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/VerifyRuleFired.java 2007-10-23 04:11:27 UTC (rev 15997)
@@ -4,9 +4,14 @@
public String ruleName;
public Integer expectedCount;
- public Boolean expectNotFire;
- public Boolean expectFire;
+ /**
+ * If this is true, then we expect it to fire at least once.
+ * False means it should not fire at all (this is an alternative
+ * to specifying an expected count).
+ */
+ public Boolean expectedFire;
+
public Boolean success;
public Integer actual;
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java 2007-10-23 02:01:01 UTC (rev 15996)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java 2007-10-23 04:11:27 UTC (rev 15997)
@@ -70,7 +70,7 @@
if (assertion instanceof VerifyFact) {
verify((VerifyFact)assertion);
} else if (assertion instanceof VerifyRuleFired) {
- verify((VerifyRuleFired) assertion, scenario.ruleTrace.firingCounts);
+ verify((VerifyRuleFired) assertion, listener.firingCounts);
}
}
@@ -78,15 +78,14 @@
- private void verify(VerifyRuleFired assertion, Map<String, Integer> firingCounts) {
+ void verify(VerifyRuleFired assertion, Map<String, Integer> firingCounts) {
assertion.actual = firingCounts.containsKey(assertion.ruleName) ? firingCounts.get(assertion.ruleName) : 0;
- if (assertion.expectNotFire) {
- assertion.success = assertion.actual == 0;
- } else if (assertion.expectFire) {
- assertion.success = assertion.actual > 0;
- } else {
- assertion.success = assertion.actual == assertion.expectedCount;
+ if (assertion.expectedFire != null) {
+ assertion.success = assertion.expectedFire ? assertion.actual > 0 : assertion.actual == 0;
}
+ if (assertion.expectedCount != null) {
+ assertion.success = assertion.actual.equals(assertion.expectedCount);
+ }
}
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java 2007-10-23 02:01:01 UTC (rev 15996)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java 2007-10-23 04:11:27 UTC (rev 15997)
@@ -1,6 +1,8 @@
package org.drools.testframework;
+import java.util.HashMap;
import java.util.HashSet;
+import java.util.Map;
import org.drools.Cheese;
import org.drools.Person;
@@ -11,6 +13,7 @@
import org.drools.brms.client.modeldriven.testing.Scenario;
import org.drools.brms.client.modeldriven.testing.VerifyFact;
import org.drools.brms.client.modeldriven.testing.VerifyField;
+import org.drools.brms.client.modeldriven.testing.VerifyRuleFired;
import junit.framework.TestCase;
@@ -134,6 +137,40 @@
}
+ public void testCountVerification() throws Exception {
+ Map<String, Integer> firingCounts = new HashMap<String, Integer>();
+ firingCounts.put("foo", 2);
+ firingCounts.put("bar", 1);
+ //and baz, we leave out
+ ScenarioRunner runner = new ScenarioRunner(new Scenario(), null, new MockWorkingMemory());
+ VerifyRuleFired v = new VerifyRuleFired();
+ v.ruleName = "foo";
+ v.expectedFire = true;
+ runner.verify(v, firingCounts);
+ assertTrue(v.success);
+ assertEquals(2, v.actual.intValue());
+
+ v = new VerifyRuleFired();
+ v.ruleName = "foo";
+ v.expectedFire = false;
+ runner.verify(v, firingCounts);
+ assertFalse(v.success);
+ assertEquals(2, v.actual.intValue());
+
+ v = new VerifyRuleFired();
+ v.ruleName = "foo";
+ v.expectedCount = 2;
+
+ runner.verify(v, firingCounts);
+ assertTrue(v.success);
+ assertEquals(2, v.actual.intValue());
+
+ }
+
+
+
+
+
}
More information about the jboss-svn-commits
mailing list