]> source.dussan.org Git - vaadin-framework.git/commitdiff
Test for 2179
authorJoonas Lehtinen <joonas.lehtinen@itmill.com>
Fri, 24 Oct 2008 13:11:51 +0000 (13:11 +0000)
committerJoonas Lehtinen <joonas.lehtinen@itmill.com>
Fri, 24 Oct 2008 13:11:51 +0000 (13:11 +0000)
svn changeset:5714/svn branch:trunk

src/com/itmill/toolkit/tests/tickets/Ticket2179.java [new file with mode: 0644]

diff --git a/src/com/itmill/toolkit/tests/tickets/Ticket2179.java b/src/com/itmill/toolkit/tests/tickets/Ticket2179.java
new file mode 100644 (file)
index 0000000..d484741
--- /dev/null
@@ -0,0 +1,56 @@
+package com.itmill.toolkit.tests.tickets;
+
+import com.itmill.toolkit.Application;
+import com.itmill.toolkit.data.Property;
+import com.itmill.toolkit.data.Validator;
+import com.itmill.toolkit.data.Property.ValueChangeEvent;
+import com.itmill.toolkit.ui.TextField;
+import com.itmill.toolkit.ui.Window;
+
+public class Ticket2179 extends Application {
+
+    TextField f = new TextField("Test fiel ( must contain 1 & 2 )");
+    Window main = new Window("Dual validator test");
+
+    @Override
+    public void init() {
+
+        f.setImmediate(true);
+        f.setRequired(true);
+        f.addValidator(new ContainsValidator("1"));
+        f.addValidator(new ContainsValidator("2"));
+
+        setMainWindow(main);
+        main.addComponent(f);
+
+        f.addListener(new Property.ValueChangeListener() {
+
+            public void valueChange(ValueChangeEvent event) {
+                main.showNotification("Test field is "
+                        + (f.isValid() ? "valid" : "invalid"));
+            }
+        });
+
+    }
+
+    class ContainsValidator implements Validator {
+        private final String c;
+
+        public ContainsValidator(String c) {
+            this.c = c;
+        }
+
+        public boolean isValid(Object value) {
+            return value != null && value.toString().contains(c);
+        }
+
+        public void validate(Object value) throws InvalidValueException {
+            if (!isValid(value)) {
+                throw new InvalidValueException("Value does not contain " + c);
+            }
+
+        }
+
+    }
+
+}