use of org.drools.workbench.screens.guided.dtable.client.widget.table.model.synchronizers.ModelSynchronizer.VetoUpdatePatternInUseException in project drools-wb by kiegroup.
the class ConditionColumnSynchronizerTest method checkConditionCannotBeUpdatedWhenFieldBindingIsUsedInAction.
@Test
public void checkConditionCannotBeUpdatedWhenFieldBindingIsUsedInAction() throws VetoException {
final Pattern52 pattern = boundApplicantPattern("$a");
final ConditionCol52 condition = ageEqualsCondition();
condition.setBinding("$age");
final BRLActionColumn action = actionCallMethod("$age");
modelSynchronizer.appendColumn(pattern, condition);
modelSynchronizer.appendColumn(action);
try {
final Pattern52 editedPattern = boundApplicantPattern("$a");
final ConditionCol52 editedCondition = ageEqualsCondition();
editedCondition.setBinding("$age2");
modelSynchronizer.updateColumn(pattern, condition, editedPattern, editedCondition);
fail("Update of the column should have been vetoed.");
} catch (VetoUpdatePatternInUseException veto) {
// This is expected
} catch (VetoException veto) {
fail("VetoUpdatePatternInUseException was expected.");
}
assertEquals(5, model.getExpandedColumns().size());
assertTrue(model.getExpandedColumns().get(0) instanceof RowNumberCol52);
assertTrue(model.getExpandedColumns().get(1) instanceof RuleNameColumn);
assertTrue(model.getExpandedColumns().get(2) instanceof DescriptionCol52);
assertEquals(condition, model.getExpandedColumns().get(3));
assertEquals(action.getChildColumns().get(0), model.getExpandedColumns().get(4));
}
Aggregations