package org.drools.template.parser; import java.util.List; import java.util.Map; import junit.framework.TestCase; import org.drools.core.util.StringUtils; public class RuleTemplateTest extends TestCase { public void testSetContents() { RuleTemplate rt = new RuleTemplate("rt1", getTemplateContainer()); rt.setContents("Test template"); assertEquals("Test template\n", rt.getContents()); } private TemplateContainer getTemplateContainer() { return new TemplateContainer() { public Column getColumn(String name) { return null; } public Column[] getColumns() { return null; } public String getHeader() { return null; } public Map<String, RuleTemplate> getTemplates() { return null; } }; } public void testAddColumn() { RuleTemplate rt = new RuleTemplate("rt1", getTemplateContainer()); rt.addColumn("StandardColumn"); rt.addColumn("!NotColumn"); rt.addColumn("ColumnCondition == \"test\""); rt.addColumn("!NotColumnCondition == \"test2\""); rt.addColumn("ArrayColumnCondition[0] == \"test2\""); List<TemplateColumn> columns = rt.getColumns(); assertEquals(5, columns.size()); TemplateColumn column1 = (TemplateColumn) columns.get(0); assertEquals("StandardColumn", column1.getName()); assertFalse(column1.isNotCondition()); assertTrue(StringUtils.isEmpty(column1.getCondition())); TemplateColumn column2 = (TemplateColumn) columns.get(1); assertEquals("NotColumn", column2.getName()); assertTrue(column2.isNotCondition()); assertTrue(StringUtils.isEmpty(column2.getCondition())); TemplateColumn column3 = (TemplateColumn) columns.get(2); assertEquals("ColumnCondition", column3.getName()); assertFalse(column3.isNotCondition()); assertEquals("== \"test\"", column3.getCondition()); TemplateColumn column4 = (TemplateColumn) columns.get(3); assertEquals("NotColumnCondition", column4.getName()); assertTrue(column4.isNotCondition()); assertEquals("== \"test2\"", column4.getCondition()); } }