use of org.drools.workbench.models.guided.dtable.shared.model.AttributeCol52 in project drools-wb by kiegroup.
the class AttributeColumnSynchronizerTest method testUpdate2.
@Test
public void testUpdate2() throws VetoException {
final AttributeCol52 column = spy(new AttributeCol52());
column.setAttribute(RuleAttributeWidget.SALIENCE_ATTR);
modelSynchronizer.appendColumn(column);
final AttributeCol52 edited = new AttributeCol52();
edited.setWidth(column.getWidth());
edited.setAttribute(RuleAttributeWidget.SALIENCE_ATTR);
edited.setHideColumn(true);
List<BaseColumnFieldDiff> diffs = modelSynchronizer.updateColumn(column, edited);
assertEquals(1, diffs.size());
verify(column).diff(edited);
assertEquals(1, model.getAttributeCols().size());
assertEquals(RuleAttributeWidget.SALIENCE_ATTR, model.getAttributeCols().get(0).getAttribute());
assertEquals(3, uiModel.getColumns().size());
assertTrue(uiModel.getColumns().get(2) instanceof IntegerUiColumn);
assertEquals(RuleAttributeWidget.SALIENCE_ATTR, uiModel.getColumns().get(2).getHeaderMetaData().get(0).getTitle());
assertEquals(false, uiModel.getColumns().get(2).isVisible());
}
use of org.drools.workbench.models.guided.dtable.shared.model.AttributeCol52 in project drools-wb by kiegroup.
the class AttributeColumnSynchronizerTest method testMoveColumnTo_MoveRight.
@Test
public void testMoveColumnTo_MoveRight() throws VetoException {
final AttributeCol52 column1 = new AttributeCol52();
column1.setAttribute(RuleAttributeWidget.SALIENCE_ATTR);
final AttributeCol52 column2 = new AttributeCol52();
column2.setAttribute(RuleAttributeWidget.AGENDA_GROUP_ATTR);
modelSynchronizer.appendColumn(column1);
modelSynchronizer.appendColumn(column2);
modelSynchronizer.appendRow();
uiModel.setCellValue(0, 2, new BaseGridCellValue<Integer>(1));
uiModel.setCellValue(0, 3, new BaseGridCellValue<String>("smurf"));
assertEquals(2, model.getAttributeCols().size());
assertEquals(column1, model.getAttributeCols().get(0));
assertEquals(column2, model.getAttributeCols().get(1));
assertEquals(1, model.getData().get(0).get(2).getNumericValue());
assertEquals("smurf", model.getData().get(0).get(3).getStringValue());
assertEquals(4, uiModel.getColumns().size());
final GridColumn<?> uiModelColumn1_1 = uiModel.getColumns().get(2);
final GridColumn<?> uiModelColumn2_1 = uiModel.getColumns().get(3);
assertEquals(RuleAttributeWidget.SALIENCE_ATTR, uiModelColumn1_1.getHeaderMetaData().get(0).getTitle());
assertEquals(RuleAttributeWidget.AGENDA_GROUP_ATTR, uiModelColumn2_1.getHeaderMetaData().get(0).getTitle());
assertTrue(uiModelColumn1_1 instanceof IntegerUiColumn);
assertTrue(uiModelColumn2_1 instanceof StringUiColumn);
assertEquals(2, uiModelColumn1_1.getIndex());
assertEquals(3, uiModelColumn2_1.getIndex());
assertEquals(1, uiModel.getRow(0).getCells().get(uiModelColumn1_1.getIndex()).getValue().getValue());
assertEquals("smurf", uiModel.getRow(0).getCells().get(uiModelColumn2_1.getIndex()).getValue().getValue());
uiModel.moveColumnTo(3, uiModelColumn1_1);
assertEquals(2, model.getAttributeCols().size());
assertEquals(column2, model.getAttributeCols().get(0));
assertEquals(column1, model.getAttributeCols().get(1));
assertEquals("smurf", model.getData().get(0).get(2).getStringValue());
assertEquals(1, model.getData().get(0).get(3).getNumericValue());
assertEquals(4, uiModel.getColumns().size());
final GridColumn<?> uiModelColumn1_2 = uiModel.getColumns().get(2);
final GridColumn<?> uiModelColumn2_2 = uiModel.getColumns().get(3);
assertEquals(RuleAttributeWidget.AGENDA_GROUP_ATTR, uiModelColumn1_2.getHeaderMetaData().get(0).getTitle());
assertEquals(RuleAttributeWidget.SALIENCE_ATTR, uiModelColumn2_2.getHeaderMetaData().get(0).getTitle());
assertTrue(uiModelColumn1_2 instanceof StringUiColumn);
assertTrue(uiModelColumn2_2 instanceof IntegerUiColumn);
assertEquals(3, uiModelColumn1_2.getIndex());
assertEquals(2, uiModelColumn2_2.getIndex());
assertEquals("smurf", uiModel.getRow(0).getCells().get(uiModelColumn1_2.getIndex()).getValue().getValue());
assertEquals(1, uiModel.getRow(0).getCells().get(uiModelColumn2_2.getIndex()).getValue().getValue());
}
use of org.drools.workbench.models.guided.dtable.shared.model.AttributeCol52 in project drools-wb by kiegroup.
the class GuidedDecisionTableTest method testGetType.
@Test
@SuppressWarnings("serial")
public void testGetType() {
final GuidedDecisionTable52 model = new GuidedDecisionTable52();
final ModuleDataModelOracle loader = ModuleDataModelOracleBuilder.newModuleOracleBuilder(new RawMVELEvaluator()).addFact("Driver").addField(new ModelField("age", Integer.class.getName(), ModelField.FIELD_CLASS_TYPE.REGULAR_CLASS, ModelField.FIELD_ORIGIN.DECLARED, FieldAccessorsAndMutators.BOTH, DataType.TYPE_NUMERIC_INTEGER)).addField(new ModelField("name", String.class.getName(), ModelField.FIELD_CLASS_TYPE.REGULAR_CLASS, ModelField.FIELD_ORIGIN.DECLARED, FieldAccessorsAndMutators.BOTH, DataType.TYPE_STRING)).addField(new ModelField("date", Date.class.getName(), ModelField.FIELD_CLASS_TYPE.REGULAR_CLASS, ModelField.FIELD_ORIGIN.DECLARED, FieldAccessorsAndMutators.BOTH, DataType.TYPE_DATE)).addField(new ModelField("approved", Boolean.class.getName(), ModelField.FIELD_CLASS_TYPE.REGULAR_CLASS, ModelField.FIELD_ORIGIN.DECLARED, FieldAccessorsAndMutators.BOTH, DataType.TYPE_BOOLEAN)).end().build();
// Emulate server-to-client conversions
final AsyncPackageDataModelOracle oracle = getOracle();
final PackageDataModelOracleBaselinePayload dataModel = new PackageDataModelOracleBaselinePayload();
dataModel.setModelFields(loader.getModuleModelFields());
populateDataModelOracle(mock(Path.class), model, oracle, dataModel);
final ColumnUtilities utils = new ColumnUtilities(model, oracle);
final AttributeCol52 salienceAttribute = new AttributeCol52();
salienceAttribute.setAttribute("salience");
final AttributeCol52 enabledAttribute = new AttributeCol52();
enabledAttribute.setAttribute("enabled");
model.getAttributeCols().add(salienceAttribute);
model.getAttributeCols().add(enabledAttribute);
final Pattern52 p1 = new Pattern52();
final ConditionCol52 conditionColName = new ConditionCol52();
p1.setBoundName("c1");
p1.setFactType("Driver");
conditionColName.setFactField("name");
conditionColName.setOperator("==");
conditionColName.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
p1.getChildColumns().add(conditionColName);
final ConditionCol52 conditionColAge = new ConditionCol52();
conditionColAge.setFactField("age");
conditionColAge.setOperator("==");
conditionColAge.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
p1.getChildColumns().add(conditionColAge);
final ConditionCol52 conditionColDate = new ConditionCol52();
conditionColDate.setFactField("date");
conditionColDate.setOperator("==");
conditionColDate.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
p1.getChildColumns().add(conditionColDate);
final ConditionCol52 conditionColApproved = new ConditionCol52();
conditionColApproved.setFactField("approved");
conditionColApproved.setOperator("==");
conditionColApproved.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
p1.getChildColumns().add(conditionColApproved);
final ConditionCol52 conditionColAge2 = new ConditionCol52();
conditionColAge2.setFactField("age");
conditionColAge2.setConstraintValueType(BaseSingleFieldConstraint.TYPE_LITERAL);
p1.getChildColumns().add(conditionColAge2);
model.getConditions().add(p1);
final ActionSetFieldCol52 a = new ActionSetFieldCol52();
a.setBoundName("c1");
a.setFactField("name");
model.getActionCols().add(a);
final ActionSetFieldCol52 a2 = new ActionSetFieldCol52();
a2.setBoundName("c1");
a2.setFactField("age");
model.getActionCols().add(a2);
final ActionInsertFactCol52 ins = new ActionInsertFactCol52();
ins.setBoundName("x");
ins.setFactType("Driver");
ins.setFactField("name");
model.getActionCols().add(ins);
final ActionInsertFactCol52 ins_ = new ActionInsertFactCol52();
ins_.setBoundName("x");
ins_.setFactType("Driver");
ins_.setFactField("age");
model.getActionCols().add(ins_);
assertEquals(DataType.TYPE_NUMERIC_INTEGER, utils.getType(salienceAttribute));
assertEquals(DataType.TYPE_BOOLEAN, utils.getType(enabledAttribute));
assertEquals(DataType.TYPE_STRING, utils.getType(conditionColName));
assertEquals(DataType.TYPE_NUMERIC_INTEGER, utils.getType(conditionColAge));
assertEquals(DataType.TYPE_DATE, utils.getType(conditionColDate));
assertEquals(DataType.TYPE_BOOLEAN, utils.getType(conditionColApproved));
assertEquals(DataType.TYPE_STRING, utils.getType(a));
assertEquals(DataType.TYPE_NUMERIC_INTEGER, utils.getType(a2));
assertEquals(DataType.TYPE_STRING, utils.getType(ins));
assertEquals(DataType.TYPE_NUMERIC_INTEGER, utils.getType(ins_));
assertEquals(DataType.TYPE_STRING, utils.getType(conditionColAge2));
}
use of org.drools.workbench.models.guided.dtable.shared.model.AttributeCol52 in project drools-wb by kiegroup.
the class SystemControlledColumnValuesSynchronizerTest method setUp.
@Before
public void setUp() throws Exception {
salienceAttribute = new AttributeCol52();
salienceAttribute.setAttribute(RuleAttributeWidget.SALIENCE_ATTR);
resolvedHitMetadata = new MetadataCol52();
resolvedHitMetadata.setMetadata(GuidedDecisionTable52.HitPolicy.RESOLVED_HIT_METADATA_NAME);
model.setHitPolicy(GuidedDecisionTable52.HitPolicy.RESOLVED_HIT);
modelSynchronizer.appendColumn(salienceAttribute);
modelSynchronizer.appendColumn(resolvedHitMetadata);
rowsCount = 0;
}
use of org.drools.workbench.models.guided.dtable.shared.model.AttributeCol52 in project drools-wb by kiegroup.
the class GuidedDecisionTableGeneratorListenerTest method testDurationWarnings.
@Test
public void testDurationWarnings() {
final ConversionResult result = new ConversionResult();
final List<DataListener> listeners = new ArrayList<DataListener>();
final GuidedDecisionTableGeneratorListener listener = new GuidedDecisionTableGeneratorListener(result, dmo);
listeners.add(listener);
// Convert
final ExcelParser parser = new ExcelParser(listeners);
final InputStream is = this.getClass().getResourceAsStream("DurationWarnings.xls");
try {
parser.parseFile(is);
} finally {
try {
is.close();
} catch (IOException ioe) {
fail(ioe.getMessage());
}
}
// Check conversion results
assertEquals(2, result.getMessages().size());
assertEquals(ConversionMessageType.WARNING, result.getMessages().get(0).getMessageType());
assertFalse(result.getMessages().get(0).getMessage().indexOf("Duration is not an long literal, in cell C7") == -1);
assertEquals(ConversionMessageType.WARNING, result.getMessages().get(1).getMessageType());
assertFalse(result.getMessages().get(1).getMessage().indexOf("Duration is not an long literal, in cell C8") == -1);
// Check basics
List<GuidedDecisionTable52> dtables = listener.getGuidedDecisionTables();
assertNotNull(dtables);
assertEquals(1, dtables.size());
GuidedDecisionTable52 dtable = dtables.get(0);
assertEquals("DurationWarningsTest", dtable.getTableName());
assertEquals(GuidedDecisionTable52.TableFormat.EXTENDED_ENTRY, dtable.getTableFormat());
// Check expanded columns
List<BaseColumn> columns = dtable.getExpandedColumns();
assertNotNull(columns);
assertEquals(3, columns.size());
assertTrue(columns.get(0) instanceof RowNumberCol52);
assertTrue(columns.get(1) instanceof DescriptionCol52);
assertTrue(columns.get(2) instanceof AttributeCol52);
// Check attribute column
AttributeCol52 attrCol2 = ((AttributeCol52) columns.get(2));
assertEquals(GuidedDecisionTable52.DURATION_ATTR, attrCol2.getAttribute());
assertFalse(attrCol2.isUseRowNumber());
assertFalse(attrCol2.isReverseOrder());
// Check data
assertEquals(2, dtable.getData().size());
assertTrue(isRowEquivalent(new Object[] { 1, "Rule 1", 0 }, dtable.getData().get(0)));
assertTrue(isRowEquivalent(new Object[] { 2, "Rule 2", 0 }, dtable.getData().get(1)));
}
Aggregations