From: Joonas Lehtinen Date: Wed, 14 May 2008 15:59:18 +0000 (+0000) Subject: Testcase for #846 X-Git-Tag: 6.7.0.beta1~4774 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=f085ac43d6529d634d5b2212f93c64c28c3b9483;p=vaadin-framework.git Testcase for #846 svn changeset:4487/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/tests/tickets/Ticket846.java b/src/com/itmill/toolkit/tests/tickets/Ticket846.java new file mode 100644 index 0000000000..c9e2598c07 --- /dev/null +++ b/src/com/itmill/toolkit/tests/tickets/Ticket846.java @@ -0,0 +1,58 @@ +package com.itmill.toolkit.tests.tickets; + +import java.util.Collections; +import java.util.LinkedList; + +import sun.net.www.http.Hurryable; + +import com.itmill.toolkit.Application; +import com.itmill.toolkit.data.Validator; +import com.itmill.toolkit.data.util.MethodProperty; +import com.itmill.toolkit.ui.Button; +import com.itmill.toolkit.ui.TextField; +import com.itmill.toolkit.ui.Window; + +public class Ticket846 extends Application { + + @Override + public void init() { + + final Window mainWin = new Window("Test app for #846"); + setMainWindow(mainWin); + + final TextField tx = new TextField("Integer"); + mainWin.addComponent(tx); + tx.setImmediate(true); + tx.addValidator(new Validator() { + + public boolean isValid(Object value) { + try { + Integer.parseInt("" + value); + return true; + } catch (NumberFormatException e) { + return false; + } + } + + public void validate(Object value) throws InvalidValueException { + if (!isValid(value)) + throw new InvalidValueException(value + " is not a number"); + } + }); + + for (String props : new String[] {"required","invalidAllowed","readOnly","readThrough","invalidCommitted"}) { + Button b = new Button(props,new MethodProperty(tx,props)); + b.setImmediate(true); + mainWin.addComponent(b); + } + + mainWin.addComponent(new Button("Validate integer", + new Button.ClickListener() { + public void buttonClick( + com.itmill.toolkit.ui.Button.ClickEvent event) { + mainWin.showNotification("The field is " + (tx.isValid()?"":"not ") + "valid"); + }; + })); + } + +}