aboutsummaryrefslogtreecommitdiffstats
path: root/uitest/src/com/vaadin
diff options
context:
space:
mode:
authorAnna Koskinen <anna@vaadin.com>2013-02-01 13:07:20 +0200
committerAnna Koskinen <anna@vaadin.com>2013-02-01 15:23:36 +0200
commita915f6fd1f03efcf7c04dc383d1a076ca46f4b3d (patch)
treece0b026df406f0e7f7b26f4933e7d461667d9624 /uitest/src/com/vaadin
parent9c6f83505896145c6d84534c610720ede83993e0 (diff)
downloadvaadin-framework-a915f6fd1f03efcf7c04dc383d1a076ca46f4b3d.tar.gz
vaadin-framework-a915f6fd1f03efcf7c04dc383d1a076ca46f4b3d.zip
Merge of (#10766) to Vaadin 7.
Fix case where ComboBox suggestion menu selects a wrong item if there are duplicate captions. Change-Id: Ia2e6502f328f5f6daca74e6b60bd3b6ffb7ad977
Diffstat (limited to 'uitest/src/com/vaadin')
-rw-r--r--uitest/src/com/vaadin/tests/components/combobox/ComboBoxDuplicateCaption.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/uitest/src/com/vaadin/tests/components/combobox/ComboBoxDuplicateCaption.java b/uitest/src/com/vaadin/tests/components/combobox/ComboBoxDuplicateCaption.java
new file mode 100644
index 0000000000..3c1e8a27d6
--- /dev/null
+++ b/uitest/src/com/vaadin/tests/components/combobox/ComboBoxDuplicateCaption.java
@@ -0,0 +1,66 @@
+package com.vaadin.tests.components.combobox;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import com.vaadin.data.Property.ValueChangeListener;
+import com.vaadin.data.util.BeanItemContainer;
+import com.vaadin.tests.components.TestBase;
+import com.vaadin.tests.util.Log;
+import com.vaadin.tests.util.Person;
+import com.vaadin.ui.AbstractSelect.ItemCaptionMode;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.ComboBox;
+
+public class ComboBoxDuplicateCaption extends TestBase {
+
+ private Log log = new Log(5);
+
+ @Override
+ protected void setup() {
+ List<Person> list = new ArrayList<Person>();
+ Person p1 = new Person();
+ p1.setFirstName("John");
+ p1.setLastName("Doe");
+ list.add(p1);
+
+ Person p2 = new Person();
+ p2.setFirstName("Jane");
+ p2.setLastName("Doe");
+ list.add(p2);
+
+ BeanItemContainer<Person> container = new BeanItemContainer<Person>(
+ Person.class);
+ container.addAll(list);
+
+ ComboBox box = new ComboBox("Duplicate captions test Box");
+ box.setId("ComboBox");
+ box.setImmediate(true);
+ box.addValueChangeListener(new ValueChangeListener() {
+
+ public void valueChange(
+ com.vaadin.data.Property.ValueChangeEvent event) {
+ Person p = (Person) event.getProperty().getValue();
+ log.log("Person = " + p.getFirstName() + " " + p.getLastName());
+ }
+ });
+ box.setContainerDataSource(container);
+ box.setItemCaptionMode(ItemCaptionMode.PROPERTY);
+ box.setItemCaptionPropertyId("lastName");
+
+ addComponent(log);
+
+ addComponent(box);
+ addComponent(new Button("Focus this"));
+ }
+
+ @Override
+ protected String getDescription() {
+ return "VFilterSelects with duplicate item captions should not try to do a select (exact match search) for onBlur if not waitingForFilteringResponse";
+ }
+
+ @Override
+ protected Integer getTicketNumber() {
+ return 10766;
+ }
+}