[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