diff options
author | Anna Koskinen <anna@vaadin.com> | 2013-02-01 13:07:20 +0200 |
---|---|---|
committer | Anna Koskinen <anna@vaadin.com> | 2013-02-01 15:23:36 +0200 |
commit | a915f6fd1f03efcf7c04dc383d1a076ca46f4b3d (patch) | |
tree | ce0b026df406f0e7f7b26f4933e7d461667d9624 /uitest/src/com/vaadin | |
parent | 9c6f83505896145c6d84534c610720ede83993e0 (diff) | |
download | vaadin-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.java | 66 |
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; + } +} |