diff options
Diffstat (limited to 'uitest/src/com/vaadin/tests/tickets/Ticket2107.java')
-rw-r--r-- | uitest/src/com/vaadin/tests/tickets/Ticket2107.java | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/uitest/src/com/vaadin/tests/tickets/Ticket2107.java b/uitest/src/com/vaadin/tests/tickets/Ticket2107.java new file mode 100644 index 0000000000..37d570546b --- /dev/null +++ b/uitest/src/com/vaadin/tests/tickets/Ticket2107.java @@ -0,0 +1,59 @@ +package com.vaadin.tests.tickets; + +import com.vaadin.Application; +import com.vaadin.data.Property; +import com.vaadin.data.Property.ValueChangeEvent; +import com.vaadin.data.Validator; +import com.vaadin.ui.CheckBox; +import com.vaadin.ui.Notification; +import com.vaadin.ui.UI.LegacyWindow; +import com.vaadin.ui.TextField; + +public class Ticket2107 extends Application.LegacyApplication { + + @Override + public void init() { + final LegacyWindow w = new LegacyWindow("Testing for #2107"); + setMainWindow(w); + + final TextField tf = new TextField( + "Required field that validated the input"); + tf.setDescription("Enter someting and click outside the field to activate"); + tf.setRequired(true); + tf.setImmediate(true); + tf.addListener(new Property.ValueChangeListener() { + + @Override + public void valueChange(ValueChangeEvent event) { + w.showNotification("TextField is " + (tf.isValid() ? "" : "in") + + "valid, with error: " + tf.getErrorMessage(), + Notification.TYPE_WARNING_MESSAGE); + } + }); + tf.addValidator(new Validator() { + + @Override + public void validate(Object value) throws InvalidValueException { + if (value == null || value.toString().length() <= 3) { + throw new InvalidValueException( + "Text length must exceed 3 characters"); + } + } + }); + w.addComponent(tf); + + final CheckBox b = new CheckBox( + "Field should use error message. (!) should be shown when empty.", + false); + w.addComponent(b); + b.setImmediate(true); + b.addListener(new Property.ValueChangeListener() { + @Override + public void valueChange(ValueChangeEvent event) { + tf.setRequiredError(b.getValue() ? "Field must not be empty" + : null); + } + }); + } + +} |