]> source.dussan.org Git - vaadin-framework.git/commitdiff
Test case for #1811: Validation logic is not logical: isRequired == false should...
authorJoonas Lehtinen <joonas.lehtinen@itmill.com>
Sat, 14 Jun 2008 13:41:59 +0000 (13:41 +0000)
committerJoonas Lehtinen <joonas.lehtinen@itmill.com>
Sat, 14 Jun 2008 13:41:59 +0000 (13:41 +0000)
svn changeset:4872/svn branch:trunk

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

diff --git a/src/com/itmill/toolkit/tests/tickets/Ticket1811.java b/src/com/itmill/toolkit/tests/tickets/Ticket1811.java
new file mode 100644 (file)
index 0000000..96dc32b
--- /dev/null
@@ -0,0 +1,73 @@
+package com.itmill.toolkit.tests.tickets;\r
+\r
+import java.util.LinkedList;\r
+\r
+import com.itmill.toolkit.data.validator.StringLengthValidator;\r
+import com.itmill.toolkit.ui.Button;\r
+import com.itmill.toolkit.ui.Label;\r
+import com.itmill.toolkit.ui.TextField;\r
+import com.itmill.toolkit.ui.Window;\r
+import com.itmill.toolkit.ui.Button.ClickEvent;\r
+\r
+public class Ticket1811 extends com.itmill.toolkit.Application {\r
+\r
+    LinkedList listOfAllFields = new LinkedList();\r
+\r
+    public void init() {\r
+\r
+        final Window main = new Window("#1811");\r
+        setMainWindow(main);\r
+\r
+        TextField tf1 = new TextField(\r
+                "Text field with default settings (required=false)");\r
+        main.addComponent(tf1);\r
+        listOfAllFields.add(tf1);\r
+\r
+        TextField tf2 = new TextField("Text field with required=true");\r
+        tf2.setRequired(true);\r
+        main.addComponent(tf2);\r
+        listOfAllFields.add(tf2);\r
+\r
+        TextField tf3 = new TextField(\r
+                "Text field with required=true and strlen >= 3");\r
+        tf3.setRequired(true);\r
+        tf3.addValidator(new StringLengthValidator(\r
+                "String must be at least 3 chars long and non-null", 3, 1,\r
+                false));\r
+        main.addComponent(tf3);\r
+        listOfAllFields.add(tf3);\r
+\r
+        TextField tf4 = new TextField(\r
+                "Text field with required=false (default) and strlen >= 3");\r
+        tf4.addValidator(new StringLengthValidator(\r
+                "String must be at least 3 chars long and non-null", 3, 1,\r
+                false));\r
+        main.addComponent(tf4);\r
+        listOfAllFields.add(tf4);\r
+\r
+        Button checkValidity = new Button("Check validity of the fields");\r
+        main.addComponent(checkValidity);\r
+        checkValidity.addListener(new Button.ClickListener() {\r
+\r
+            public void buttonClick(ClickEvent event) {\r
+                StringBuffer msg = new StringBuffer();\r
+                for (java.util.Iterator i = listOfAllFields.iterator(); i\r
+                        .hasNext();) {\r
+                    TextField tf = (TextField) i.next();\r
+                    msg.append("<h1>" + tf.getCaption() + "</h1>\n");\r
+                    if (tf.isValid()) {\r
+                        msg.append("VALID\n<hr/>");\r
+                    } else {\r
+                        msg.append("INVALID<br/><i>" + tf.getErrorMessage()\r
+                                + "</i><hr/>");\r
+                    }\r
+                }\r
+                Window w = new Window("Status of the fields");\r
+                w.setModal(true);\r
+                w.addComponent(new Label(msg.toString(), Label.CONTENT_XHTML));\r
+                main.addWindow(w);\r
+            }\r
+        });\r
+    }\r
+\r
+}\r