use of org.drools.workbench.models.guided.dtable.shared.model.ActionInsertFactCol52 in project drools-wb by kiegroup.
the class ActionInsertFactColumnSynchronizerTest method testAppend.
@Test
public void testAppend() throws VetoException {
final ActionInsertFactCol52 column = new ActionInsertFactCol52();
column.setHeader("col1");
column.setBoundName("$a");
column.setFactType("Applicant");
column.setFactField("age");
modelSynchronizer.appendColumn(column);
assertEquals(1, model.getActionCols().size());
assertEquals(3, uiModel.getColumns().size());
assertTrue(uiModel.getColumns().get(2) instanceof IntegerUiColumn);
assertEquals(true, ((BaseSingletonDOMElementUiColumn) uiModel.getColumns().get(2)).isEditable());
}
use of org.drools.workbench.models.guided.dtable.shared.model.ActionInsertFactCol52 in project drools by kiegroup.
the class GuidedDTModelConversionTest method testConversionPatternGrouping.
@Test
public void testConversionPatternGrouping() {
GuidedDecisionTable dt = new GuidedDecisionTable();
dt.tableName = "michael";
MetadataCol md = new MetadataCol();
md.attr = "legacy";
md.defaultValue = "yes";
dt.metadataCols.add(md);
AttributeCol attr = new AttributeCol();
attr.attr = "salience";
attr.defaultValue = "66";
dt.attributeCols.add(attr);
ConditionCol con = new ConditionCol();
con.boundName = "f1";
con.constraintValueType = BaseSingleFieldConstraint.TYPE_LITERAL;
con.factField = "age";
con.factType = "Driver";
con.header = "Driver f1 age";
con.operator = "==";
dt.conditionCols.add(con);
ConditionCol con2 = new ConditionCol();
con2.boundName = "f2";
con2.constraintValueType = BaseSingleFieldConstraint.TYPE_LITERAL;
con2.factField = "name";
con2.factType = "Person";
con2.header = "Person f2 name";
con2.operator = "==";
dt.conditionCols.add(con2);
ConditionCol con3 = new ConditionCol();
con3.boundName = "f1";
con3.constraintValueType = BaseSingleFieldConstraint.TYPE_RET_VALUE;
con3.factField = "rating";
con3.factType = "Driver";
con3.header = "Driver rating";
con3.operator = "==";
dt.conditionCols.add(con3);
ConditionCol con4 = new ConditionCol();
con4.boundName = "f2";
con4.constraintValueType = BaseSingleFieldConstraint.TYPE_PREDICATE;
con4.factType = "Person";
con4.header = "Person f2 not needed";
con4.factField = "(not needed)";
dt.conditionCols.add(con4);
ActionInsertFactCol ins = new ActionInsertFactCol();
ins.boundName = "ins";
ins.factType = "Cheese";
ins.factField = "price";
ins.type = DataType.TYPE_NUMERIC_INTEGER;
dt.actionCols.add(ins);
ActionRetractFactCol ret = new ActionRetractFactCol();
ret.boundName = "ret1";
dt.actionCols.add(ret);
ActionSetFieldCol set = new ActionSetFieldCol();
set.boundName = "f1";
set.factField = "goo1";
set.type = DataType.TYPE_STRING;
dt.actionCols.add(set);
ActionSetFieldCol set2 = new ActionSetFieldCol();
set2.boundName = "f1";
set2.factField = "goo2";
set2.defaultValue = "whee";
set2.type = DataType.TYPE_STRING;
dt.actionCols.add(set2);
dt.data = new String[][] { new String[] { "1", "desc", "metar1", "saliencer1", "f1c1r1", "f2c1r1", "f1c2r1", "f2c2r1", "a1r1", "a2r1", "a3r1", "a4r1" }, new String[] { "2", "desc", "metar2", "saliencer2", "f1c1r2", "f2c1r2", "f1c2r2", "f2c2r2", "a1r2", "a2r2", "a3r2", "a4r2" } };
String[][] expected = new String[][] { new String[] { "1", "desc", "metar1", "saliencer1", "f1c1r1", "f1c2r1", "f2c1r1", "f2c2r1", "a1r1", "ret1", "a3r1", "a4r1" }, new String[] { "2", "desc", "metar2", "saliencer2", "f1c1r2", "f1c2r2", "f2c1r2", "f2c2r2", "a1r2", "ret1", "a3r2", "a4r2" } };
GuidedDecisionTable52 tsdt = upgrader.upgrade(dt);
assertEquals("michael", tsdt.getTableName());
assertEquals(1, tsdt.getMetadataCols().size());
assertEquals("legacy", tsdt.getMetadataCols().get(0).getMetadata());
assertEquals("yes", tsdt.getMetadataCols().get(0).getDefaultValue().getStringValue());
assertEquals(1, tsdt.getAttributeCols().size());
assertEquals("salience", tsdt.getAttributeCols().get(0).getAttribute());
assertEquals("66", tsdt.getAttributeCols().get(0).getDefaultValue().getStringValue());
assertEquals(2, tsdt.getConditions().size());
assertEquals("f1", tsdt.getConditionPattern("f1").getBoundName());
assertEquals("Driver", tsdt.getConditionPattern("f1").getFactType());
assertEquals("f2", tsdt.getConditionPattern("f2").getBoundName());
assertEquals("Person", tsdt.getConditionPattern("f2").getFactType());
assertEquals(2, tsdt.getConditionPattern("f1").getChildColumns().size());
assertEquals(2, tsdt.getConditionPattern("f2").getChildColumns().size());
assertEquals(BaseSingleFieldConstraint.TYPE_LITERAL, tsdt.getConditionPattern("f1").getChildColumns().get(0).getConstraintValueType());
assertEquals("age", tsdt.getConditionPattern("f1").getChildColumns().get(0).getFactField());
assertEquals("Driver", tsdt.getPattern(tsdt.getConditionPattern("f1").getChildColumns().get(0)).getFactType());
assertEquals("Driver f1 age", tsdt.getConditionPattern("f1").getChildColumns().get(0).getHeader());
assertEquals("==", tsdt.getConditionPattern("f1").getChildColumns().get(0).getOperator());
assertEquals(BaseSingleFieldConstraint.TYPE_RET_VALUE, tsdt.getConditionPattern("f1").getChildColumns().get(1).getConstraintValueType());
assertEquals("rating", tsdt.getConditionPattern("f1").getChildColumns().get(1).getFactField());
assertEquals("Driver", tsdt.getPattern(tsdt.getConditionPattern("f1").getChildColumns().get(1)).getFactType());
assertEquals("Driver rating", tsdt.getConditionPattern("f1").getChildColumns().get(1).getHeader());
assertEquals("==", tsdt.getConditionPattern("f1").getChildColumns().get(1).getOperator());
assertEquals(BaseSingleFieldConstraint.TYPE_LITERAL, tsdt.getConditionPattern("f2").getChildColumns().get(0).getConstraintValueType());
assertEquals("name", tsdt.getConditionPattern("f2").getChildColumns().get(0).getFactField());
assertEquals("Person", tsdt.getPattern(tsdt.getConditionPattern("f2").getChildColumns().get(0)).getFactType());
assertEquals("Person f2 name", tsdt.getConditionPattern("f2").getChildColumns().get(0).getHeader());
assertEquals("==", tsdt.getConditionPattern("f2").getChildColumns().get(0).getOperator());
assertEquals(BaseSingleFieldConstraint.TYPE_PREDICATE, tsdt.getConditionPattern("f2").getChildColumns().get(1).getConstraintValueType());
assertEquals("(not needed)", tsdt.getConditionPattern("f2").getChildColumns().get(1).getFactField());
assertEquals("Person", tsdt.getPattern(tsdt.getConditionPattern("f2").getChildColumns().get(1)).getFactType());
assertEquals("Person f2 not needed", tsdt.getConditionPattern("f2").getChildColumns().get(1).getHeader());
assertEquals(null, tsdt.getConditionPattern("f2").getChildColumns().get(1).getOperator());
assertEquals(4, tsdt.getActionCols().size());
ActionInsertFactCol52 a1 = (ActionInsertFactCol52) tsdt.getActionCols().get(0);
assertEquals("ins", a1.getBoundName());
assertEquals("Cheese", a1.getFactType());
assertEquals("price", a1.getFactField());
assertEquals(DataType.TYPE_NUMERIC_INTEGER, a1.getType());
ActionRetractFactCol52 a2 = (ActionRetractFactCol52) tsdt.getActionCols().get(1);
assertNotNull(a2);
ActionSetFieldCol52 a3 = (ActionSetFieldCol52) tsdt.getActionCols().get(2);
assertEquals("f1", a3.getBoundName());
assertEquals("goo1", a3.getFactField());
assertEquals(DataType.TYPE_STRING, a3.getType());
ActionSetFieldCol52 a4 = (ActionSetFieldCol52) tsdt.getActionCols().get(3);
assertEquals("f1", a4.getBoundName());
assertEquals("goo2", a4.getFactField());
assertEquals("whee", a4.getDefaultValue().getStringValue());
assertEquals(DataType.TYPE_STRING, a4.getType());
assertEquals(2, tsdt.getData().size());
for (int i = 0; i < 2; i++) {
System.out.println("Row-" + i);
StringBuilder sb = new StringBuilder();
for (DTCellValue52 c : tsdt.getData().get(i)) {
sb.append(c.getStringValue() + ", ");
}
sb.delete(sb.lastIndexOf(","), sb.length());
System.out.println(sb.toString());
}
assertEquals(new Integer(1), (Integer) tsdt.getData().get(0).get(0).getNumericValue());
assertEquals("desc", tsdt.getData().get(0).get(1).getStringValue());
assertEquals("metar1", tsdt.getData().get(0).get(2).getStringValue());
assertEquals("saliencer1", tsdt.getData().get(0).get(3).getStringValue());
assertEquals("f1c1r1", tsdt.getData().get(0).get(4).getStringValue());
assertEquals("f1c2r1", tsdt.getData().get(0).get(5).getStringValue());
assertEquals("f2c1r1", tsdt.getData().get(0).get(6).getStringValue());
assertEquals("f2c2r1", tsdt.getData().get(0).get(7).getStringValue());
assertEquals("a1r1", tsdt.getData().get(0).get(8).getStringValue());
assertEquals("ret1", tsdt.getData().get(0).get(9).getStringValue());
assertEquals("a3r1", tsdt.getData().get(0).get(10).getStringValue());
assertEquals("a4r1", tsdt.getData().get(0).get(11).getStringValue());
assertEquals(new Integer(2), (Integer) tsdt.getData().get(1).get(0).getNumericValue());
assertEquals("desc", tsdt.getData().get(1).get(1).getStringValue());
assertEquals("metar2", tsdt.getData().get(1).get(2).getStringValue());
assertEquals("saliencer2", tsdt.getData().get(1).get(3).getStringValue());
assertEquals("f1c1r2", tsdt.getData().get(1).get(4).getStringValue());
assertEquals("f1c2r2", tsdt.getData().get(1).get(5).getStringValue());
assertEquals("f2c1r2", tsdt.getData().get(1).get(6).getStringValue());
assertEquals("f2c2r2", tsdt.getData().get(1).get(7).getStringValue());
assertEquals("a1r2", tsdt.getData().get(1).get(8).getStringValue());
assertEquals("ret1", tsdt.getData().get(1).get(9).getStringValue());
assertEquals("a3r2", tsdt.getData().get(1).get(10).getStringValue());
assertEquals("a4r2", tsdt.getData().get(1).get(11).getStringValue());
isRowEquivalent(tsdt.getData().get(0), expected[0]);
isRowEquivalent(tsdt.getData().get(1), expected[1]);
}
use of org.drools.workbench.models.guided.dtable.shared.model.ActionInsertFactCol52 in project drools by kiegroup.
the class GuidedDTModelConversionTest method testConversion.
@Test
public void testConversion() {
GuidedDecisionTable dt = new GuidedDecisionTable();
dt.tableName = "michael";
MetadataCol md = new MetadataCol();
md.attr = "legacy";
md.defaultValue = "yes";
dt.metadataCols.add(md);
AttributeCol attr = new AttributeCol();
attr.attr = "salience";
attr.defaultValue = "66";
dt.attributeCols.add(attr);
ConditionCol con = new ConditionCol();
con.boundName = "f1";
con.constraintValueType = BaseSingleFieldConstraint.TYPE_LITERAL;
con.factField = "age";
con.factType = "Driver";
con.header = "Driver f1 age";
con.operator = "==";
dt.conditionCols.add(con);
ConditionCol con2 = new ConditionCol();
con2.boundName = "f1";
con2.constraintValueType = BaseSingleFieldConstraint.TYPE_LITERAL;
con2.factField = "name";
con2.factType = "Driver";
con2.header = "Driver f1 name";
con2.operator = "==";
dt.conditionCols.add(con2);
ConditionCol con3 = new ConditionCol();
con3.boundName = "f1";
con3.constraintValueType = BaseSingleFieldConstraint.TYPE_RET_VALUE;
con3.factField = "rating";
con3.factType = "Driver";
con3.header = "Driver rating";
con3.operator = "==";
dt.conditionCols.add(con3);
ConditionCol con4 = new ConditionCol();
con4.boundName = "f2";
con4.constraintValueType = BaseSingleFieldConstraint.TYPE_PREDICATE;
con4.factType = "Driver";
con4.header = "Driver 2 pimp";
con4.factField = "(not needed)";
dt.conditionCols.add(con4);
ActionInsertFactCol ins = new ActionInsertFactCol();
ins.boundName = "ins";
ins.factType = "Cheese";
ins.factField = "price";
ins.type = DataType.TYPE_NUMERIC_INTEGER;
dt.actionCols.add(ins);
ActionRetractFactCol ret = new ActionRetractFactCol();
ret.boundName = "ret1";
dt.actionCols.add(ret);
ActionSetFieldCol set = new ActionSetFieldCol();
set.boundName = "f1";
set.factField = "goo1";
set.type = DataType.TYPE_STRING;
dt.actionCols.add(set);
ActionSetFieldCol set2 = new ActionSetFieldCol();
set2.boundName = "f1";
set2.factField = "goo2";
set2.defaultValue = "whee";
set2.type = DataType.TYPE_STRING;
dt.actionCols.add(set2);
dt.data = new String[][] { new String[] { "1", "desc", "metar1", "saliencer1", "c1r1", "c2r1", "c3r1", "c4r1", "a1r1", "a2r1", "a3r1", "a4r1" }, new String[] { "2", "desc", "metar2", "saliencer2", "c1r2", "c2r2", "c3r2", "c4r2", "a1r2", "a2r2", "a3r2", "a4r2" } };
String[][] expected = new String[][] { new String[] { "1", "desc", "metar1", "saliencer1", "c1r1", "c2r1", "c3r1", "c4r1", "a1r1", "ret1", "a3r1", "a4r1" }, new String[] { "2", "desc", "metar2", "saliencer2", "c1r2", "c2r2", "c3r2", "c4r2", "a1r2", "ret1", "a3r2", "a4r2" } };
GuidedDecisionTable52 tsdt = upgrader.upgrade(dt);
assertEquals("michael", tsdt.getTableName());
assertEquals(GuidedDecisionTable52.TableFormat.EXTENDED_ENTRY, tsdt.getTableFormat());
assertEquals(1, tsdt.getMetadataCols().size());
assertEquals("legacy", tsdt.getMetadataCols().get(0).getMetadata());
assertEquals("yes", tsdt.getMetadataCols().get(0).getDefaultValue().getStringValue());
assertEquals(1, tsdt.getAttributeCols().size());
assertEquals("salience", tsdt.getAttributeCols().get(0).getAttribute());
assertEquals("66", tsdt.getAttributeCols().get(0).getDefaultValue().getStringValue());
assertEquals(2, tsdt.getConditions().size());
assertEquals("f1", tsdt.getConditionPattern("f1").getBoundName());
assertEquals("Driver", tsdt.getConditionPattern("f1").getFactType());
assertEquals("f2", tsdt.getConditionPattern("f2").getBoundName());
assertEquals("Driver", tsdt.getConditionPattern("f2").getFactType());
assertEquals(3, tsdt.getConditionPattern("f1").getChildColumns().size());
assertEquals(1, tsdt.getConditionPattern("f2").getChildColumns().size());
assertEquals(BaseSingleFieldConstraint.TYPE_LITERAL, tsdt.getConditionPattern("f1").getChildColumns().get(0).getConstraintValueType());
assertEquals("age", tsdt.getConditionPattern("f1").getChildColumns().get(0).getFactField());
assertEquals("Driver", tsdt.getPattern(tsdt.getConditionPattern("f1").getChildColumns().get(0)).getFactType());
assertEquals("Driver f1 age", tsdt.getConditionPattern("f1").getChildColumns().get(0).getHeader());
assertEquals("==", tsdt.getConditionPattern("f1").getChildColumns().get(0).getOperator());
assertEquals(BaseSingleFieldConstraint.TYPE_LITERAL, tsdt.getConditionPattern("f1").getChildColumns().get(1).getConstraintValueType());
assertEquals("name", tsdt.getConditionPattern("f1").getChildColumns().get(1).getFactField());
assertEquals("Driver", tsdt.getPattern(tsdt.getConditionPattern("f1").getChildColumns().get(1)).getFactType());
assertEquals("Driver f1 name", tsdt.getConditionPattern("f1").getChildColumns().get(1).getHeader());
assertEquals("==", tsdt.getConditionPattern("f1").getChildColumns().get(1).getOperator());
assertEquals(BaseSingleFieldConstraint.TYPE_RET_VALUE, tsdt.getConditionPattern("f1").getChildColumns().get(2).getConstraintValueType());
assertEquals("rating", tsdt.getConditionPattern("f1").getChildColumns().get(2).getFactField());
assertEquals("Driver", tsdt.getPattern(tsdt.getConditionPattern("f1").getChildColumns().get(2)).getFactType());
assertEquals("Driver rating", tsdt.getConditionPattern("f1").getChildColumns().get(2).getHeader());
assertEquals("==", tsdt.getConditionPattern("f1").getChildColumns().get(2).getOperator());
assertEquals(BaseSingleFieldConstraint.TYPE_PREDICATE, tsdt.getConditionPattern("f2").getChildColumns().get(0).getConstraintValueType());
assertEquals("(not needed)", tsdt.getConditionPattern("f2").getChildColumns().get(0).getFactField());
assertEquals("Driver", tsdt.getPattern(tsdt.getConditionPattern("f2").getChildColumns().get(0)).getFactType());
assertEquals("Driver 2 pimp", tsdt.getConditionPattern("f2").getChildColumns().get(0).getHeader());
assertEquals(4, tsdt.getActionCols().size());
ActionInsertFactCol52 a1 = (ActionInsertFactCol52) tsdt.getActionCols().get(0);
assertEquals("ins", a1.getBoundName());
assertEquals("Cheese", a1.getFactType());
assertEquals("price", a1.getFactField());
assertEquals(DataType.TYPE_NUMERIC_INTEGER, a1.getType());
ActionRetractFactCol52 a2 = (ActionRetractFactCol52) tsdt.getActionCols().get(1);
assertNotNull(a2);
ActionSetFieldCol52 a3 = (ActionSetFieldCol52) tsdt.getActionCols().get(2);
assertEquals("f1", a3.getBoundName());
assertEquals("goo1", a3.getFactField());
assertEquals(DataType.TYPE_STRING, a3.getType());
ActionSetFieldCol52 a4 = (ActionSetFieldCol52) tsdt.getActionCols().get(3);
assertEquals("f1", a4.getBoundName());
assertEquals("goo2", a4.getFactField());
assertEquals("whee", a4.getDefaultValue().getStringValue());
assertEquals(DataType.TYPE_STRING, a4.getType());
assertEquals(2, tsdt.getData().size());
isRowEquivalent(tsdt.getData().get(0), expected[0]);
isRowEquivalent(tsdt.getData().get(1), expected[1]);
}
use of org.drools.workbench.models.guided.dtable.shared.model.ActionInsertFactCol52 in project drools by kiegroup.
the class GuidedDTDRLPersistenceTest method test2Rules.
@Test
public void test2Rules() throws Exception {
GuidedDecisionTable52 dt = new GuidedDecisionTable52();
dt.setTableName("michael");
AttributeCol52 attr = new AttributeCol52();
attr.setAttribute("salience");
attr.setDefaultValue(new DTCellValue52("66"));
dt.getAttributeCols().add(attr);
Pattern52 p1 = new Pattern52();
p1.setBoundName("f1");
p1.setFactType("Driver");
ConditionCol52 con = new ConditionCol52();
con.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
con.setFactField("age");
con.setHeader("Driver f1 age");
con.setOperator("==");
p1.getChildColumns().add(con);
ConditionCol52 con2 = new ConditionCol52();
con2.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
con2.setFactField("name");
con2.setHeader("Driver f1 name");
con2.setOperator("==");
p1.getChildColumns().add(con2);
ConditionCol52 con3 = new ConditionCol52();
con3.setConstraintValueType(BaseSingleFieldConstraint.TYPE_RET_VALUE);
con3.setFactField("rating");
con3.setHeader("Driver rating");
con3.setOperator("==");
p1.getChildColumns().add(con3);
dt.getConditions().add(p1);
Pattern52 p2 = new Pattern52();
p2.setBoundName("f2");
p2.setFactType("Driver");
ConditionCol52 con4 = new ConditionCol52();
con4.setConstraintValueType(BaseSingleFieldConstraint.TYPE_PREDICATE);
con4.setHeader("Driver 2 pimp");
con4.setFactField("(not needed)");
p2.getChildColumns().add(con4);
dt.getConditions().add(p2);
ActionInsertFactCol52 ins = new ActionInsertFactCol52();
ins.setBoundName("ins");
ins.setFactType("Cheese");
ins.setFactField("price");
ins.setType(DataType.TYPE_NUMERIC_INTEGER);
dt.getActionCols().add(ins);
ActionRetractFactCol52 ret = new ActionRetractFactCol52();
dt.getActionCols().add(ret);
ActionSetFieldCol52 set = new ActionSetFieldCol52();
set.setBoundName("f1");
set.setFactField("goo1");
set.setType(DataType.TYPE_STRING);
dt.getActionCols().add(set);
ActionSetFieldCol52 set2 = new ActionSetFieldCol52();
set2.setBoundName("f1");
set2.setFactField("goo2");
set2.setDefaultValue(new DTCellValue52("whee"));
set2.setType(DataType.TYPE_STRING);
dt.getActionCols().add(set2);
dt.setData(DataUtilities.makeDataLists(new String[][] { new String[] { "1", "desc", "42", "33", "michael", "age * 0.2", "age > 7", "6.60", "true", "gooVal1", "f2" }, new String[] { "2", "desc", "66", "39", "bob", "age * 0.3", "age > 7", "6.60", "", "gooVal1", "whee" } }));
GuidedDTDRLPersistence p = GuidedDTDRLPersistence.getInstance();
String drl = p.marshal(dt);
assertTrue(drl.indexOf("from row number") > -1);
assertTrue(drl.indexOf("rating == ( age * 0.2 )") > 0);
assertTrue(drl.indexOf("f2 : Driver( eval( age > 7 ))") > 0);
assertTrue(drl.indexOf("rating == ( age * 0.3 )") > drl.indexOf("rating == ( age * 0.2 )"));
assertTrue(drl.indexOf("f1.setGoo2( \"whee\" )") > 0);
assertTrue(drl.indexOf("salience 66") > 0);
}
use of org.drools.workbench.models.guided.dtable.shared.model.ActionInsertFactCol52 in project drools by kiegroup.
the class GuidedDTDRLPersistenceTest method testRHSNonEmptyStringValues.
@Test
public void testRHSNonEmptyStringValues() {
GuidedDecisionTable52 dt = new GuidedDecisionTable52();
dt.setTableFormat(GuidedDecisionTable52.TableFormat.EXTENDED_ENTRY);
dt.setTableName("extended-entry");
ActionInsertFactCol52 ins1 = new ActionInsertFactCol52();
ins1.setBoundName("$f");
ins1.setFactType("Smurf");
ins1.setFactField("name");
ins1.setType(DataType.TYPE_STRING);
dt.getActionCols().add(ins1);
ActionInsertFactCol52 ins2 = new ActionInsertFactCol52();
ins2.setBoundName("$f");
ins2.setFactType("Smurf");
ins2.setFactField("age");
ins2.setType(DataType.TYPE_NUMERIC_INTEGER);
dt.getActionCols().add(ins2);
dt.setData(DataUtilities.makeDataLists(new Object[][] { new Object[] { 1l, "desc-row1", null, null }, new Object[] { 2l, "desc-row2", " ", 35l }, new Object[] { 3l, "desc-row3", "", null }, new Object[] { 4l, "desc-row4", "", 35l } }));
GuidedDTDRLPersistence p = GuidedDTDRLPersistence.getInstance();
String drl = p.marshal(dt);
final String expected = "//from row number: 1\n" + "//desc-row1\n" + "rule \"Row 1 extended-entry\"\n" + " dialect \"mvel\"\n" + " when\n" + " then\n" + "end\n" + "//from row number: 2\n" + "//desc-row2\n" + "rule \"Row 2 extended-entry\"\n" + " dialect \"mvel\"\n" + " when\n" + " then\n" + " Smurf $f = new Smurf();\n" + " $f.setAge( 35 );\n" + " insert( $f );\n" + "end\n" + "//from row number: 3\n" + "//desc-row3\n" + "rule \"Row 3 extended-entry\"\n" + " dialect \"mvel\"\n" + " when\n" + " then\n" + "end\n" + "//from row number: 4\n" + "//desc-row4\n" + "rule \"Row 4 extended-entry\"\n" + " dialect \"mvel\"\n" + " when\n" + " then\n" + " Smurf $f = new Smurf();\n" + " $f.setAge( 35 );\n" + " insert( $f );\n" + "end";
assertEqualsIgnoreWhitespace(expected, drl);
}
Aggregations