[jboss-svn-commits] JBL Code SVN: r19355 - in labs/jbossrules/branches/mic_20080325/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 Apr 1 02:29:32 EDT 2008
Author: michael.neale at jboss.com
Date: 2008-04-01 02:29:32 -0400 (Tue, 01 Apr 2008)
New Revision: 19355
Modified:
labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/ExecutionTrace.java
labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java
labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/TestingEventListener.java
labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java
labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/TestingEventListenerTest.java
Log:
improvements for scenario tracing
Modified: labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/ExecutionTrace.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/ExecutionTrace.java 2008-04-01 03:03:37 UTC (rev 19354)
+++ labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/ExecutionTrace.java 2008-04-01 06:29:32 UTC (rev 19355)
@@ -28,6 +28,11 @@
*/
public Long numberOfRulesFired;
+ /**
+ * A summary of the rules fired.
+ */
+ public String[] rulesFired;
+
public ExecutionTrace() {}
Modified: labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java 2008-04-01 03:03:37 UTC (rev 19354)
+++ labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java 2008-04-01 06:29:32 UTC (rev 19355)
@@ -116,7 +116,9 @@
wm.fireAllRules(listener.getAgendaFilter(ruleList, scenario.inclusive),scenario.maxRuleFirings);
executionTrace.executionTimeResult = System.currentTimeMillis() - time;
executionTrace.numberOfRulesFired = listener.totalFires;
+ executionTrace.rulesFired = listener.getRulesFiredSummary();
+
} else if (fx instanceof Expectation) {
Expectation assertion = (Expectation) fx;
if (assertion instanceof VerifyFact) {
Modified: labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/TestingEventListener.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/TestingEventListener.java 2008-04-01 03:03:37 UTC (rev 19354)
+++ labs/jbossrules/branches/mic_20080325/drools-compiler/src/main/java/org/drools/testframework/TestingEventListener.java 2008-04-01 06:29:32 UTC (rev 19355)
@@ -5,7 +5,9 @@
import java.io.ObjectOutput;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.Map;
+import java.util.Map.Entry;
import org.drools.WorkingMemory;
import org.drools.event.ActivationCancelledEvent;
@@ -153,8 +155,23 @@
return this.firingCounts;
}
+ /**
+ * Return a list of the rules fired, for display purposes.
+ */
+ public String[] getRulesFiredSummary() {
+ String[] r = new String[firingCounts.size()];
+ int i = 0;
+ for (Iterator iterator = firingCounts.entrySet().iterator(); iterator.hasNext();) {
+ Entry<String, Integer> e = (Entry<String, Integer>) iterator.next();
+ r[i] = e.getKey() + " [" + e.getValue() + "]";
+ i++;
+ }
+ return r;
+ }
+
+
}
class NilConsequence implements Consequence {
Modified: labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java 2008-04-01 03:03:37 UTC (rev 19354)
+++ labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java 2008-04-01 06:29:32 UTC (rev 19355)
@@ -708,9 +708,13 @@
Thread.sleep( 50 );
+
+
assertTrue( (new Date()).after( sc.lastRunResult ) );
assertTrue( executionTrace.executionTimeResult != null );
+ assertTrue(executionTrace.rulesFired.length > 0);
+
}
public void testIntgerationStateful() throws Exception {
Modified: labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/TestingEventListenerTest.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/TestingEventListenerTest.java 2008-04-01 03:03:37 UTC (rev 19354)
+++ labs/jbossrules/branches/mic_20080325/drools-compiler/src/test/java/org/drools/testframework/TestingEventListenerTest.java 2008-04-01 06:29:32 UTC (rev 19355)
@@ -86,6 +86,12 @@
assertEquals(new Integer(1), (Integer) ls.firingCounts.get("rule1"));
assertEquals(new Integer(1), (Integer) ls.firingCounts.get("rule2"));
assertEquals(new Integer(1), (Integer) ls.firingCounts.get("rule3"));
+
+ String[] summary = ls.getRulesFiredSummary();
+ assertEquals(3, summary.length);
+ assertNotNull(summary[0]);
+ assertFalse(summary[1].equals(""));
+
assertEquals(1, list.size());
}
More information about the jboss-svn-commits
mailing list