diff options
author | Teemu Suo-Anttila <tsuoanttila@users.noreply.github.com> | 2018-04-19 12:10:10 +0300 |
---|---|---|
committer | Ilia Motornyi <elmot@vaadin.com> | 2018-04-19 12:10:10 +0300 |
commit | f0bb6f4e35cb4ed3f01ea8cadb521e79d623870a (patch) | |
tree | e3928380bda2a04c412131344bfbc7de117444d3 /server/src/test/java | |
parent | 406473ab0b52d0fc4af2c97870e97993321c108f (diff) | |
download | vaadin-framework-f0bb6f4e35cb4ed3f01ea8cadb521e79d623870a.tar.gz vaadin-framework-f0bb6f4e35cb4ed3f01ea8cadb521e79d623870a.zip |
Fix AbstractSingleSelect selection and state updates (#10796)
Diffstat (limited to 'server/src/test/java')
-rw-r--r-- | server/src/test/java/com/vaadin/ui/ComboBoxTest.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/server/src/test/java/com/vaadin/ui/ComboBoxTest.java b/server/src/test/java/com/vaadin/ui/ComboBoxTest.java index ea431ec614..74a194e96e 100644 --- a/server/src/test/java/com/vaadin/ui/ComboBoxTest.java +++ b/server/src/test/java/com/vaadin/ui/ComboBoxTest.java @@ -1,5 +1,10 @@ package com.vaadin.ui; +import static org.junit.Assert.assertArrayEquals; + +import java.util.ArrayList; +import java.util.List; + import org.junit.Test; import com.vaadin.server.ServerRpcManager; @@ -8,6 +13,8 @@ import com.vaadin.tests.util.MockUI; public class ComboBoxTest { + private List<String> eventValues = new ArrayList<>(); + @Test public void testResetValue() { ComboBox<String> comboBox = new ComboBox<>(); @@ -15,10 +22,15 @@ public class ComboBoxTest { // Reset value whenever it changes (in a real case, this listener would // do something with the selected value before discarding it) - comboBox.addValueChangeListener(event -> comboBox.setValue(null)); + comboBox.addValueChangeListener(event -> { + eventValues.add(event.getValue()); + comboBox.setValue(null); + }); // "Attach" the component and initialize diffstate new MockUI().setContent(comboBox); + // Generate initial data + comboBox.getDataCommunicator().beforeClientResponse(true); ComponentTest.syncToClient(comboBox); // Emulate selection of "one" @@ -27,6 +39,9 @@ public class ComboBoxTest { ServerRpcManager.getRpcProxy(comboBox, SelectionServerRpc.class) .select(oneKey); + assertArrayEquals("Unexpected values from selection events", + new Object[] { "one", null }, eventValues.toArray()); + ComponentTest.assertEncodedStateProperties(comboBox, "Selection change done by the listener should be sent to the client", "selectedItemKey"); |