[jboss-svn-commits] JBL Code SVN: r9446 - labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Feb 12 06:23:52 EST 2007
Author: stevearoonie
Date: 2007-02-12 06:23:52 -0500 (Mon, 12 Feb 2007)
New Revision: 9446
Added:
labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/DefaultTemplateRuleBaseTest.java
Log:
add extra tests
Added: labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/DefaultTemplateRuleBaseTest.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/DefaultTemplateRuleBaseTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/DefaultTemplateRuleBaseTest.java 2007-02-12 11:23:52 UTC (rev 9446)
@@ -0,0 +1,61 @@
+package org.drools.decisiontable.parser;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import junit.framework.TestCase;
+
+import org.drools.rule.GroupElement;
+import org.drools.rule.LiteralConstraint;
+import org.drools.rule.Package;
+import org.drools.rule.Rule;
+
+public class DefaultTemplateRuleBaseTest extends TestCase {
+
+ public void testSimpleTemplate() throws Exception
+ {
+ TemplateContainer tc = new TemplateContainer() {
+
+ public Column[] getColumns() {
+ return new Column[] {
+ new Column("column1"),
+ new Column("column2")
+ };
+ }
+
+ public String getHeader() {
+ return null;
+ }
+
+ public Map getTemplates() {
+ Map templates = new HashMap();
+ RuleTemplate ruleTemplate = new RuleTemplate("template1");
+ ruleTemplate.addColumn("column1");
+ ruleTemplate.addColumn("column2");
+ templates.put("template1", ruleTemplate);
+ return templates;
+ }
+
+ };
+ DefaultTemplateRuleBase ruleBase = new DefaultTemplateRuleBase(tc);
+ Package[] packages = ruleBase.newWorkingMemory().getRuleBase().getPackages();
+ assertEquals(1, packages.length);
+ Map globals = packages[0].getGlobals();
+ assertEquals(DefaultGenerator.class, globals.get("generator"));
+ Rule[] rules = packages[0].getRules();
+ assertEquals(1, rules.length);
+ assertEquals("template1", rules[0].getName());
+ GroupElement lhs = rules[0].getLhs();
+ //when
+ // r : Row()
+ // Cell(row == r, column == "column1")
+ // Cell(row == r, column == "column2")
+ assertEquals(3, lhs.getChildren().size());
+ org.drools.rule.Column column = (org.drools.rule.Column) lhs.getChildren().get(1);
+ LiteralConstraint constraint = (LiteralConstraint) column.getConstraints().get(1);
+ assertEquals("column1", constraint.getField().getValue());
+ column = (org.drools.rule.Column) lhs.getChildren().get(2);
+ constraint = (LiteralConstraint) column.getConstraints().get(1);
+ assertEquals("column2", constraint.getField().getValue());
+ }
+}
More information about the jboss-svn-commits
mailing list