use of org.drools.template.model.Package in project drools by kiegroup.
the class RuleWorksheetParseTest method testMissingCodeSnippetAction.
/**
* Must have a code snippet in an action.
*/
@Test
public void testMissingCodeSnippetAction() {
try {
makeRuleSet();
makeRuleTable();
makeRow(11, "C", "A");
makeRow(12, "foo: Foo", "Bar()");
makeRow(13, "attr == $param");
makeRow(15, "1", "1");
makeRow(16, "2", "2");
listener.finishSheet();
Package p = listener.getRuleSet();
DRLOutput dout = new DRLOutput();
p.renderDRL(dout);
String drl = dout.getDRL();
System.out.println(drl);
fail("should have failed");
} catch (DecisionTableParseException e) {
String badCell = RuleSheetParserUtil.rc2name(13, 2);
System.err.println(e.getMessage());
assertTrue(e.getMessage().contains(badCell));
}
}
use of org.drools.template.model.Package in project drools by kiegroup.
the class RuleWorksheetParseTest method testDuplicatePackageAttribute.
/**
* Duplicate package level attribute
*/
@Test
public void testDuplicatePackageAttribute() {
try {
makeRuleSet();
// B3, C3
makeAttribute("agenda-group", "agroup");
// B3. B4
makeAttribute("agenda-group", "bgroup");
makeRuleTable();
makeRow(11, "C", "A", "P");
makeRow(12, "Foo", "Foo");
makeRow(13, "attr == $param", "x");
makeRow(15, "1", "show()", "10");
listener.finishSheet();
Package p = listener.getRuleSet();
DRLOutput dout = new DRLOutput();
p.renderDRL(dout);
String drl = dout.getDRL();
// System.out.println( drl );
fail("should have failed");
} catch (DecisionTableParseException e) {
System.err.println(e.getMessage());
assertTrue(e.getMessage().contains("C3, C4"));
}
}
use of org.drools.template.model.Package in project drools by kiegroup.
the class RuleWorksheetParseTest method testMetadata.
@Test
public void testMetadata() {
makeRuleSet();
makeRuleTable();
makeRow(11, "C", "A", "@", "@");
makeRow(12, "foo: Foo", "foo");
makeRow(13, "attr == $param", "goaway($param)", "Author($param)", "Version($1-$2)");
makeRow(15, "1", "1", "J.W.Goethe", "3,14");
makeRow(16, "2", "2", "", "");
listener.finishSheet();
Package p = listener.getRuleSet();
DRLOutput dout = new DRLOutput();
p.renderDRL(dout);
String drl = dout.getDRL();
assertTrue(drl.contains("@Author(J.W.Goethe)"));
assertTrue(drl.contains("@Version(3-14)"));
assertFalse(drl.contains("@Author()"));
assertFalse(drl.contains("@Version(-)"));
}
use of org.drools.template.model.Package in project drools by kiegroup.
the class RuleWorksheetParseTest method testPackageAttributeRendering.
/**
* Check correct rendering of package level attributes
*/
@Test
public void testPackageAttributeRendering() {
makeRuleSet();
makeAttribute("NO-LOOP", "true");
makeAttribute("agenda-group", "agroup");
makeRuleTable();
makeRow(11, "C", "A", "P");
makeRow(12, "foo:Foo", "foo");
makeRow(13, "attr == $param", "x($param)");
makeRow(15, "1", "1", "100");
listener.finishSheet();
Package p = listener.getRuleSet();
DRLOutput dout = new DRLOutput();
p.renderDRL(dout);
String drl = dout.getDRL();
// System.out.println( drl );
assertTrue(drl.contains("no-loop true"));
assertTrue(drl.contains("agenda-group \"agroup\""));
}
Aggregations