use of org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn in project drools-wb by kiegroup.
the class BRLConditionColumnSynchronizerTest method testMoveBRLConditionBlockTo.
@Test
public void testMoveBRLConditionBlockTo() throws VetoException {
final CompositeColumn<BRLConditionVariableColumn> column1 = new BRLConditionColumn();
final BRLConditionVariableColumn column1v0 = new BRLConditionVariableColumn("$age", DataType.TYPE_NUMERIC_INTEGER, "Applicant", "age");
column1v0.setHeader("age");
final BRLConditionVariableColumn column1v1 = new BRLConditionVariableColumn("$name", DataType.TYPE_STRING, "Applicant", "name");
column1v1.setHeader("name");
column1.getChildColumns().add(column1v0);
column1.getChildColumns().add(column1v1);
final Pattern52 column2 = new Pattern52();
column2.setFactType("Address");
final ConditionCol52 column2v0 = new ConditionCol52();
column2v0.setBinding("$country");
column2v0.setFactField("country");
column2v0.setFieldType(DataType.TYPE_STRING);
column2v0.setHeader("country");
modelSynchronizer.appendColumn(column1);
modelSynchronizer.appendColumn(column2, column2v0);
modelSynchronizer.appendRow();
uiModel.setCellValue(0, 2, new BaseGridCellValue<>(55));
uiModel.setCellValue(0, 3, new BaseGridCellValue<>("Smurf"));
uiModel.setCellValue(0, 4, new BaseGridCellValue<>("Canada"));
assertEquals(2, model.getConditions().size());
assertEquals(column1, model.getConditions().get(0));
assertEquals(column2, model.getConditions().get(1));
assertEquals(55, model.getData().get(0).get(2).getNumericValue());
assertEquals("Smurf", model.getData().get(0).get(3).getStringValue());
assertEquals("Canada", model.getData().get(0).get(4).getStringValue());
assertEquals(5, uiModel.getColumns().size());
final GridColumn<?> uiModelColumn1_1 = uiModel.getColumns().get(2);
final GridColumn<?> uiModelColumn2_1 = uiModel.getColumns().get(3);
final GridColumn<?> uiModelColumn3_1 = uiModel.getColumns().get(4);
assertEquals("age", uiModelColumn1_1.getHeaderMetaData().get(0).getTitle());
assertEquals("name", uiModelColumn2_1.getHeaderMetaData().get(0).getTitle());
assertTrue(uiModelColumn1_1 instanceof IntegerUiColumn);
assertTrue(uiModelColumn2_1 instanceof StringUiColumn);
assertTrue(uiModelColumn3_1 instanceof StringUiColumn);
assertEquals(2, uiModelColumn1_1.getIndex());
assertEquals(3, uiModelColumn2_1.getIndex());
assertEquals(4, uiModelColumn3_1.getIndex());
assertEquals(55, uiModel.getRow(0).getCells().get(uiModelColumn1_1.getIndex()).getValue().getValue());
assertEquals("Smurf", uiModel.getRow(0).getCells().get(uiModelColumn2_1.getIndex()).getValue().getValue());
assertEquals("Canada", uiModel.getRow(0).getCells().get(uiModelColumn3_1.getIndex()).getValue().getValue());
uiModel.moveColumnsTo(4, new ArrayList<GridColumn<?>>() {
{
add(uiModelColumn1_1);
add(uiModelColumn2_1);
}
});
assertEquals(2, model.getConditions().size());
assertEquals(column2, model.getConditions().get(0));
assertEquals(column1, model.getConditions().get(1));
assertEquals("Canada", model.getData().get(0).get(2).getStringValue());
assertEquals(55, model.getData().get(0).get(3).getNumericValue());
assertEquals("Smurf", model.getData().get(0).get(4).getStringValue());
assertEquals(5, uiModel.getColumns().size());
final GridColumn<?> uiModelColumn1_2 = uiModel.getColumns().get(2);
final GridColumn<?> uiModelColumn2_2 = uiModel.getColumns().get(3);
final GridColumn<?> uiModelColumn3_2 = uiModel.getColumns().get(4);
assertEquals("Address", uiModelColumn1_2.getHeaderMetaData().get(0).getTitle());
assertEquals("age", uiModelColumn2_2.getHeaderMetaData().get(0).getTitle());
assertEquals("name", uiModelColumn3_2.getHeaderMetaData().get(0).getTitle());
assertTrue(uiModelColumn1_2 instanceof StringUiColumn);
assertTrue(uiModelColumn2_2 instanceof IntegerUiColumn);
assertTrue(uiModelColumn3_2 instanceof StringUiColumn);
assertEquals(4, uiModelColumn1_2.getIndex());
assertEquals(2, uiModelColumn2_2.getIndex());
assertEquals(3, uiModelColumn3_2.getIndex());
assertEquals("Canada", uiModel.getRow(0).getCells().get(uiModelColumn1_2.getIndex()).getValue().getValue());
assertEquals(55, uiModel.getRow(0).getCells().get(uiModelColumn2_2.getIndex()).getValue().getValue());
assertEquals("Smurf", uiModel.getRow(0).getCells().get(uiModelColumn3_2.getIndex()).getValue().getValue());
}
use of org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn in project drools-wb by kiegroup.
the class BRLConditionColumnSynchronizerTest method testUpdate3.
@Test
public void testUpdate3() throws VetoException {
// Single Column, multiple variables
final BRLConditionColumn column = spy(new BRLConditionColumn());
final BRLConditionVariableColumn columnV0 = new BRLConditionVariableColumn("$age", DataType.TYPE_NUMERIC_INTEGER, "Applicant", "age");
final BRLConditionVariableColumn columnV1 = new BRLConditionVariableColumn("$name", DataType.TYPE_STRING, "Applicant", "name");
column.getChildColumns().add(columnV0);
column.getChildColumns().add(columnV1);
column.setHeader("col1");
columnV0.setHeader("col1v0");
columnV1.setHeader("col1v1");
modelSynchronizer.appendColumn(column);
assertEquals(4, model.getExpandedColumns().size());
assertEquals(1, model.getConditions().size());
assertEquals(4, uiModel.getColumns().size());
assertTrue(uiModel.getColumns().get(2) instanceof IntegerUiColumn);
assertTrue(uiModel.getColumns().get(3) instanceof StringUiColumn);
assertEquals("$age", uiModel.getColumns().get(2).getHeaderMetaData().get(1).getTitle());
final BRLConditionColumn edited = new BRLConditionColumn();
final BRLConditionVariableColumn editedColumnV0 = new BRLConditionVariableColumn("$s", DataType.TYPE_NUMERIC_LONG, "Applicant", "salary");
edited.getChildColumns().add(editedColumnV0);
edited.setHideColumn(true);
edited.setHeader("updated");
editedColumnV0.setHeader("updated");
List<BaseColumnFieldDiff> diffs = modelSynchronizer.updateColumn(column, edited);
assertEquals(6, // header, hide, field name, field type, binding, removed column
diffs.size());
verify(column).diff(edited);
assertEquals(3, model.getExpandedColumns().size());
assertEquals(1, model.getConditions().size());
assertEquals(3, uiModel.getColumns().size());
assertTrue(uiModel.getColumns().get(2) instanceof LongUiColumn);
assertEquals("updated", uiModel.getColumns().get(2).getHeaderMetaData().get(0).getTitle());
assertEquals(false, uiModel.getColumns().get(2).isVisible());
assertEquals("$s", uiModel.getColumns().get(2).getHeaderMetaData().get(1).getTitle());
}
use of org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn in project drools-wb by kiegroup.
the class BRLConditionColumnPluginTest method testCloneWhenColumnIsALimitedEntryBRLConditionColumn.
@Test
public void testCloneWhenColumnIsALimitedEntryBRLConditionColumn() throws Exception {
final List<IPattern> definition = new ArrayList<>();
final boolean hideColumn = false;
final LimitedEntryBRLConditionColumn column = makeLimitedEntryBRLConditionColumn("header", hideColumn, definition);
final BRLConditionColumn clone = plugin.clone(column);
assertEquals(column.getHeader(), clone.getHeader());
assertEquals(column.isHideColumn(), clone.isHideColumn());
assertEquals(column.getDefinition(), clone.getDefinition());
assertNotSame(column, clone);
assertTrue(clone.getChildColumns().isEmpty());
}
use of org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn in project drools-wb by kiegroup.
the class BRLConditionColumnPluginTest method makeBRLConditionColumn.
private BRLConditionColumn makeBRLConditionColumn(final String header, final boolean hideColumn, final List<IPattern> definition, final List<BRLConditionVariableColumn> childColumns) {
final BRLConditionColumn column = new BRLConditionColumn();
column.setHeader(header);
column.setHideColumn(hideColumn);
column.setDefinition(definition);
column.setChildColumns(childColumns);
return column;
}
use of org.drools.workbench.models.guided.dtable.shared.model.BRLConditionColumn in project drools-wb by kiegroup.
the class BRLConditionColumnPluginTest method testCloneWhenColumnIsABRLConditionColumn.
@Test
public void testCloneWhenColumnIsABRLConditionColumn() throws Exception {
doReturn(GuidedDecisionTable52.TableFormat.EXTENDED_ENTRY).when(model).getTableFormat();
final List<IPattern> definition = new ArrayList<>();
final Boolean hideColumn = false;
final List<BRLConditionVariableColumn> childColumns = new ArrayList<BRLConditionVariableColumn>() {
{
add(mock(BRLConditionVariableColumn.class));
}
};
final BRLConditionColumn column = makeBRLConditionColumn("header", hideColumn, definition, childColumns);
final BRLConditionColumn clone = plugin.clone(column);
assertEquals(column.getHeader(), clone.getHeader());
assertEquals(column.isHideColumn(), clone.isHideColumn());
assertEquals(column.getDefinition(), clone.getDefinition());
assertNotSame(column, clone);
assertFalse(clone.getChildColumns().isEmpty());
}
Aggregations