[jboss-svn-commits] JBL Code SVN: r15935 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools/rule/builder/dialect/java and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Oct 19 02:06:12 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-10-19 02:06:12 -0400 (Fri, 19 Oct 2007)
New Revision: 15935
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/RuleBuilderTest.java
Log:
JBRULES-1285 Time machine (and some minor refactoring)
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-19 05:59:14 UTC (rev 15934)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/testframework/ScenarioRunner.java 2007-10-19 06:06:12 UTC (rev 15935)
@@ -39,7 +39,7 @@
Map<String, Object> factData = new HashMap<String, Object>();
this.scenario = scenario;
- //have to go and instansiate all the facts
+ //have to go and instanciate all the facts
for (int i = 0; i < scenario.facts.length; i++) {
FactData fact = scenario.facts[i];
Object f = eval("new " + resolver.getFullTypeName(fact.type) + "()");
@@ -49,6 +49,9 @@
this.populatedData = factData;
+ //now run the rules...
+
+ //now check the results...
for (int i = 0; i < scenario.assertions.length; i++) {
Assertion assertion = scenario.assertions[i];
if (assertion instanceof AssertFactValue) {
@@ -63,7 +66,9 @@
for (int i = 0; i < value.fieldValues.length; i++) {
AssertFieldValue verify = value.fieldValues[i];
verify.isChecked = true;
-
+ //hmmm... need a ruleset that we can use to take data
+ //from the WM under test - perhaps ALL the data
+ //if checking a named fact, may not be worth the hassle
}
}
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/RuleBuilderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/RuleBuilderTest.java 2007-10-19 05:59:14 UTC (rev 15934)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/java/RuleBuilderTest.java 2007-10-19 06:06:12 UTC (rev 15935)
@@ -1,12 +1,12 @@
/*
* Copyright 2006 JBoss Inc
- *
+ *
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -39,6 +39,7 @@
import org.drools.rule.GroupElement;
import org.drools.rule.Package;
import org.drools.rule.Rule;
+import org.drools.rule.TimeMachine;
import org.drools.rule.builder.RuleBuildContext;
import org.drools.rule.builder.RuleBuilder;
@@ -86,14 +87,14 @@
typeResolver.addImport( pkgDescr.getName() + ".*" );
typeResolver.addImport( "java.lang.*" );
- final RuleBuilder builder = new RuleBuilder( );
-
+ final RuleBuilder builder = new RuleBuilder( );
+
final PackageBuilder pkgBuilder = new PackageBuilder(pkg);
final PackageBuilderConfiguration conf = pkgBuilder.getPackageBuilderConfiguration();
Dialect dialect = pkgBuilder.getDialectRegistry().getDialect( "java" );
-
+
RuleBuildContext context = new RuleBuildContext(conf, pkg, ruleDescr, pkgBuilder.getDialectRegistry(), dialect);
-
+
builder.build( context );
Assert.assertTrue( context.getErrors().toString(),
@@ -125,8 +126,8 @@
}
public void testBuildAttributes() throws Exception {
- Rule rule = new Rule( "my rule" );
-
+ Rule rule = new Rule( "my rule" );
+
List attributes = new ArrayList();
attributes.add( new AttributeDescr("dialect", "java") );
@@ -136,11 +137,11 @@
"false" ) );
attributes.add( new AttributeDescr( "ruleflow-group",
"mygroup" ) );
-
+
RuleBuildContext.setAttributes( rule, null, attributes );
assertTrue( rule.isNoLoop() );
- assertFalse( rule.isEffective() );
+ assertFalse( rule.isEffective(new TimeMachine()) );
assertEquals( "mygroup",
rule.getRuleFlowGroup() );
@@ -153,7 +154,7 @@
rule = new Rule( "myrule" );
RuleBuildContext.setAttributes( rule, null, attributes );
-
+
final Field eff = rule.getClass().getDeclaredField( "dateEffective" );
eff.setAccessible( true );
final Calendar effectiveDate = (Calendar) eff.get( rule );
More information about the jboss-svn-commits
mailing list