aboutsummaryrefslogtreecommitdiffstats
path: root/server/src/test/java/com/vaadin/ui/ComboBoxTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/test/java/com/vaadin/ui/ComboBoxTest.java')
-rw-r--r--server/src/test/java/com/vaadin/ui/ComboBoxTest.java17
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");