[jboss-svn-commits] JBL Code SVN: r19604 - 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
Thu Apr 17 03:06:45 EDT 2008
Author: michael.neale at jboss.com
Date: 2008-04-17 03:06:44 -0400 (Thu, 17 Apr 2008)
New Revision: 19604
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:
fixing adding of test scenarios
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 2008-04-17 02:26:08 UTC (rev 19603)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/testing/Scenario.java 2008-04-17 07:06:44 UTC (rev 19604)
@@ -72,14 +72,24 @@
}
/**
- * Will slip in a fixture after the specified one.
+ * Will slip in a fixture after the specified one, but before the next execution trace.
*/
- public void insertAfter(Fixture fix, Fixture toAdd) {
- if (fix == null) {
- this.fixtures.add(0, toAdd);
- } else {
- fixtures.add( fixtures.indexOf(fix) + 1, toAdd);
- }
+ public void insertBetween(Fixture fix, Fixture toAdd) {
+
+ boolean inserted = false;
+ int start = (fix == null) ? 0 : fixtures.indexOf(fix) + 1;
+ for (int j = start; j < fixtures.size(); j++) {
+ Fixture f = (Fixture) fixtures.get(j);
+ if (f instanceof ExecutionTrace) {
+ fixtures.add(j, toAdd);
+ return;
+ }
+ }
+
+ if (!inserted) {
+ //fixtures.add( fixtures.indexOf(fix) + 1, toAdd);
+ fixtures.add(toAdd);
+ }
}
/**
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 2008-04-17 02:26:08 UTC (rev 19603)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioTest.java 2008-04-17 07:06:44 UTC (rev 19604)
@@ -16,10 +16,10 @@
public class ScenarioTest extends TestCase {
- public void testInsertAfter() {
+ public void testInsertBetween() {
Scenario sc = new Scenario();
VerifyRuleFired vf = new VerifyRuleFired();
- sc.insertAfter(null, vf);
+ sc.insertBetween(null, vf);
assertEquals(1, sc.fixtures.size());
assertEquals(vf, sc.fixtures.get(0));
@@ -27,24 +27,87 @@
sc.fixtures.add(vf2);
VerifyRuleFired vf3 = new VerifyRuleFired();
- sc.insertAfter(vf, vf3);
+ sc.insertBetween(vf, vf3);
assertEquals(3, sc.fixtures.size());
assertEquals(vf, sc.fixtures.get(0));
- assertEquals(vf3, sc.fixtures.get(1));
- assertEquals(vf2, sc.fixtures.get(2));
+ assertEquals(vf2, sc.fixtures.get(1));
+ assertEquals(vf3, sc.fixtures.get(2));
VerifyRuleFired vf4 = new VerifyRuleFired();
- sc.insertAfter(vf2, vf4);
+ sc.insertBetween(vf2, vf4);
assertEquals(4, sc.fixtures.size());
- assertEquals(vf4, sc.fixtures.get(3));
- assertEquals(vf2, sc.fixtures.get(2));
+ assertEquals(3, sc.fixtures.indexOf(vf4));
+ assertEquals(2, sc.fixtures.indexOf(vf3));
+ //assertEquals(vf4, sc.fixtures.get(3));
+ assertEquals(1, sc.fixtures.indexOf(vf2));
+ //assertEquals(vf2, sc.fixtures.get(2));
+ assertEquals(0, sc.fixtures.indexOf(vf));
+
VerifyRuleFired vf5 = new VerifyRuleFired();
- sc.insertAfter(null, vf5);
+ sc.insertBetween(null, vf5);
assertEquals(5, sc.fixtures.size());
- assertEquals(vf5, sc.fixtures.get(0));
+ assertEquals(4, sc.fixtures.indexOf(vf5));
+
+
+ sc = new Scenario();
+
+ sc.fixtures.add(vf);
+ ExecutionTrace ex = new ExecutionTrace();
+ sc.fixtures.add(ex);
+ sc.insertBetween(null, vf2);
+ assertEquals(0, sc.fixtures.indexOf(vf));
+ assertEquals(1, sc.fixtures.indexOf(vf2));
+ assertEquals(2, sc.fixtures.indexOf(ex));
+ assertEquals(3, sc.fixtures.size());
+
+ sc.insertBetween(ex, vf3);
+ assertEquals(4, sc.fixtures.size());
+ assertEquals(0, sc.fixtures.indexOf(vf));
+ assertEquals(1, sc.fixtures.indexOf(vf2));
+ assertEquals(2, sc.fixtures.indexOf(ex));
+ assertEquals(3, sc.fixtures.indexOf(vf3));
+
+
+ ExecutionTrace ex2 = new ExecutionTrace();
+ sc.fixtures.add(ex2);
+ sc.insertBetween(ex, vf4);
+ assertEquals(6, sc.fixtures.size());
+ assertEquals(0, sc.fixtures.indexOf(vf));
+ assertEquals(1, sc.fixtures.indexOf(vf2));
+ assertEquals(2, sc.fixtures.indexOf(ex));
+ assertEquals(3, sc.fixtures.indexOf(vf3));
+ assertEquals(4, sc.fixtures.indexOf(vf4));
+ assertEquals(5, sc.fixtures.indexOf(ex2));
+
+
+ sc.insertBetween(ex2, vf5);
+ assertEquals(7, sc.fixtures.size());
+ assertEquals(0, sc.fixtures.indexOf(vf));
+ assertEquals(1, sc.fixtures.indexOf(vf2));
+ assertEquals(2, sc.fixtures.indexOf(ex));
+ assertEquals(3, sc.fixtures.indexOf(vf3));
+ assertEquals(4, sc.fixtures.indexOf(vf4));
+ assertEquals(5, sc.fixtures.indexOf(ex2));
+ assertEquals(6, sc.fixtures.indexOf(vf5));
+
+
+ sc = new Scenario();
+ sc.fixtures.add(ex);
+
+ sc.insertBetween(null, vf);
+ assertEquals(2, sc.fixtures.size());
+ assertEquals(0, sc.fixtures.indexOf(vf));
+ assertEquals(1, sc.fixtures.indexOf(ex));
+
+
+
+
+
}
+
+
public void testRemoveFixture() {
Scenario sc = new Scenario();
More information about the jboss-svn-commits
mailing list