@Test public void testAddValidator() { MyValidator validator = new MyValidator(); WTextField textField = new WTextField(); WField field = new WField("dummy", textField); field.addValidator(validator); List<FieldValidator> validators = new ArrayList<>(); for (Iterator<FieldValidator> i = textField.getValidators(); i.hasNext();) { validators.add(i.next()); } Assert.assertTrue("addValidator Assert.failed", validators.contains(validator)); }
/** * Test validate - where isVisible, isValidate and it not Disableable and there are validation errors. */ @Test public void testValidate() { AbstractWComponent comp = new MockContainer(); comp.setLocked(true); setActiveContext(createUIContext()); WTextField date = new WTextField(); WField partialDateField = new WField("Text", date); partialDateField.addValidator(new MyValidator()); comp.add(partialDateField); List<Diagnostic> diags = new ArrayList<>(); comp.validate(diags); Assert.assertEquals("There be an error diagnostic", 1, diags.size()); }
/** * test validate - where isInvisible. */ @Test public void testValidateIfIsInvisible() { AbstractWComponent comp = new MockContainer(); comp.setLocked(true); setActiveContext(createUIContext()); comp.setVisible(false); // skips validation WTextField date = new WTextField(); WField partialDateField = new WField("Text", date); partialDateField.addValidator(new MyValidator()); comp.add(partialDateField); List<Diagnostic> diags = new ArrayList<>(); comp.validate(diags); Assert.assertEquals("There be no error diagnostic", 0, diags.size()); }
field2.addValidator(new RegExFieldValidator("^[a-zA-Z]*$", "{0} must only contain alphabetic characters.")); field2.getLabel().setHint("may only contain alphabetic characters"); dateField.addValidator(new DateFieldPivotValidator(DateFieldPivotValidator.AFTER)); dateField.getLabel().setHint("after today"); dateField2.addValidator(new DateFieldPivotValidator( DateFieldPivotValidator.AFTER_OR_EQUAL, df1)); dateField2.getLabel().setHint("on or after the date entered in date field 1");
/** * Creates a RepeaterComponent. */ public RepeaterComponent() { fieldSet = new WFieldSet("Repeated Fields"); add(fieldSet); fieldSet.setMargin(new Margin(null, null, Size.LARGE, null)); WFieldLayout fields = new WFieldLayout(); fieldSet.add(fields); field1Text = new WTextField(); field1Text.setMinLength(2); field1Text.setMaxLength(5); WField field1 = fields.addField("Field 1", field1Text); field1Text.setMandatory(true); field1.getLabel().setHint("required"); field2Text = new WTextField(); WField field2 = fields.addField("Field 2", field2Text); field2Text.setMandatory(true); field2.getLabel().setHint("required and must only contain alphabetic characters"); field2.addValidator(new RegExFieldValidator("^[a-zA-Z]*$", "{0} must only contain alphabetic characters.")); }
textField.setMinLength(2); WField field = fields.addField("WTextField", textField); field.addValidator(new RegExFieldValidator("^[a-zA-Z]*$", "{0} must only contain alphabetic characters.")); field.getLabel().setHint("Must contain only alphabetic characters."); dateField.getLabel().setHint("before today"); df.setMaxDate(DateUtilities.roundToDay(new Date())); dateField.addValidator(new DateFieldPivotValidator(DateFieldPivotValidator.BEFORE)); df.setToolTip("Set a date before today");