summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorArtur Signell <artur.signell@itmill.com>2009-11-25 17:49:17 +0000
committerArtur Signell <artur.signell@itmill.com>2009-11-25 17:49:17 +0000
commit1d89da47d29849dc41d7c5f2f68700eb5e918b8d (patch)
treeebb7c433c682784da404f90a608bf1488e527826 /tests
parent3de11ab062646763ce0fa1671ba35e6e7117fb24 (diff)
downloadvaadin-framework-1d89da47d29849dc41d7c5f2f68700eb5e918b8d.tar.gz
vaadin-framework-1d89da47d29849dc41d7c5f2f68700eb5e918b8d.zip
Merged changes from trunk
svn changeset:10040/svn branch:event-framework-3234
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/vaadin/tests/server/TestEventRouter.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/src/com/vaadin/tests/server/TestEventRouter.java b/tests/src/com/vaadin/tests/server/TestEventRouter.java
new file mode 100644
index 0000000000..dc388a66ac
--- /dev/null
+++ b/tests/src/com/vaadin/tests/server/TestEventRouter.java
@@ -0,0 +1,37 @@
+package com.vaadin.tests.server;
+
+import junit.framework.TestCase;
+
+import com.vaadin.data.Property.ValueChangeEvent;
+import com.vaadin.data.Property.ValueChangeListener;
+import com.vaadin.ui.TextField;
+
+public class TestEventRouter extends TestCase {
+
+ int innerListenerCalls = 0;
+
+ public void testAddInEventListener() {
+ final TextField tf = new TextField();
+
+ final ValueChangeListener outer = new ValueChangeListener() {
+
+ public void valueChange(ValueChangeEvent event) {
+ ValueChangeListener inner = new ValueChangeListener() {
+
+ public void valueChange(ValueChangeEvent event) {
+ innerListenerCalls++;
+ System.out.println("The inner listener was called");
+ }
+ };
+
+ tf.addListener(inner);
+ }
+ };
+
+ tf.addListener(outer);
+ tf.setValue("abc"); // No inner listener calls, adds one inner
+ tf.setValue("def"); // One inner listener call, adds one inner
+ tf.setValue("ghi"); // Two inner listener calls, adds one inner
+ assert (innerListenerCalls == 3);
+ }
+}