[jboss-svn-commits] JBL Code SVN: r16034 - labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Oct 24 00:46:37 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-10-24 00:46:37 -0400 (Wed, 24 Oct 2007)
New Revision: 16034
Modified:
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java
Log:
JBRULES-1271 AST + API now working (first cut)
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-24 02:27:21 UTC (rev 16033)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/ScenarioRunnerTest.java 2007-10-24 04:46:37 UTC (rev 16034)
@@ -253,7 +253,7 @@
/**
* Do a kind of end to end test with some real rules.
*/
- public void testIntegration() throws Exception {
+ public void testIntegrationWithSuccess() throws Exception {
Scenario sc = new Scenario();
sc.facts = new FactData[] {
new FactData("Cheese", "c1", new FieldData[] {
@@ -304,7 +304,64 @@
}
+ public void testIntegrationWithFailure() throws Exception {
+ Scenario sc = new Scenario();
+ sc.facts = new FactData[] {
+ new FactData("Cheese", "c1", new FieldData[] {
+ new FieldData("type", "cheddar", false),
+ new FieldData("price", "42", false) }, false),
+ new FactData("Person", "p", new FieldData[0] , true)
+ };
+ sc.ruleTrace.rules = new String[] {"rule1", "rule2" };
+ sc.ruleTrace.inclusive = true;
+ sc.assertions = new Assertion[5];
+
+ sc.assertions[0] = new VerifyFact("c1", new VerifyField[] {
+ new VerifyField("type", "cheddar")
+
+ });
+
+ sc.assertions[1] = new VerifyFact("p", new VerifyField[] {
+ new VerifyField("name", "XXX"),
+ new VerifyField("status", "rule2")
+
+ });
+
+ sc.assertions[2] = new VerifyRuleFired("rule1", 1, null);
+ sc.assertions[3] = new VerifyRuleFired("rule2", 1, null);
+ sc.assertions[4] = new VerifyRuleFired("rule3", 2, null);
+
+ TypeResolver resolver = new ClassTypeResolver(new HashSet<Object>(),
+ Thread.currentThread().getContextClassLoader());
+ resolver.addImport("org.drools.Cheese");
+ resolver.addImport("org.drools.Person");
+
+ WorkingMemory wm = getWorkingMemory("test_rules2.drl");
+
+ ScenarioRunner run = new ScenarioRunner(sc, resolver, (InternalWorkingMemory) wm);
+
+ assertSame(run.scenario, sc);
+
+ assertFalse(sc.wasSuccessful());
+
+ VerifyFact vf = (VerifyFact) sc.assertions[1];
+ assertFalse(vf.fieldValues[0].success);
+ assertEquals("XXX", vf.fieldValues[0].expected);
+ assertEquals("rule1", vf.fieldValues[0].actual);
+
+ VerifyRuleFired vr = (VerifyRuleFired) sc.assertions[4];
+ assertFalse(vr.success);
+
+ assertEquals(2, vr.expectedCount.intValue());
+ assertEquals(1, vr.actual.intValue());
+
+
+ }
+
+
+
+
}
More information about the jboss-svn-commits
mailing list