From ae565a229325f1289348c2c0e3dc02f14ed6f549 Mon Sep 17 00:00:00 2001 From: Patrik Lindström Date: Wed, 3 Jul 2013 00:04:35 +0300 Subject: Fix bug in PopupDateField where locale was retained incorrectly if changed while popup was open (#12153) Change-Id: Ib4bebab8c6e75e7f1af7cfc5198ab6516e94a45e --- .../datefield/PopupDateFieldLocaleTest.java | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 uitest/src/com/vaadin/tests/components/datefield/PopupDateFieldLocaleTest.java (limited to 'uitest/src/com/vaadin/tests/components/datefield/PopupDateFieldLocaleTest.java') diff --git a/uitest/src/com/vaadin/tests/components/datefield/PopupDateFieldLocaleTest.java b/uitest/src/com/vaadin/tests/components/datefield/PopupDateFieldLocaleTest.java new file mode 100644 index 0000000000..f12a3dda58 --- /dev/null +++ b/uitest/src/com/vaadin/tests/components/datefield/PopupDateFieldLocaleTest.java @@ -0,0 +1,53 @@ +package com.vaadin.tests.components.datefield; + +import java.util.Calendar; +import java.util.Locale; + +import com.vaadin.data.Property.ValueChangeEvent; +import com.vaadin.data.Property.ValueChangeListener; +import com.vaadin.server.VaadinRequest; +import com.vaadin.tests.components.AbstractTestUI; +import com.vaadin.ui.DateField; +import com.vaadin.ui.PopupDateField; + +public class PopupDateFieldLocaleTest extends AbstractTestUI { + + @Override + protected void setup(VaadinRequest request) { + // Set a specific time for the PopupDateField + Calendar cal = Calendar.getInstance(); + cal.set(Calendar.YEAR, 2000); + cal.set(Calendar.DAY_OF_YEAR, 1); + cal.set(Calendar.HOUR_OF_DAY, 1); + cal.set(Calendar.MINUTE, 1); + cal.set(Calendar.SECOND, 1); + cal.set(Calendar.MILLISECOND, 1); + + final PopupDateField pdf = new PopupDateField(); + pdf.setLocale(Locale.ENGLISH); + pdf.setValue(cal.getTime()); + pdf.setImmediate(true); + pdf.setResolution(DateField.RESOLUTION_SEC); + addComponent(pdf); + + pdf.addValueChangeListener(new ValueChangeListener() { + @Override + public void valueChange(ValueChangeEvent event) { + pdf.setLocale(Locale.FRENCH); + } + }); + } + + @Override + protected String getTestDescription() { + return "Changing the locale while the popupdatefield is visible can " + + "result in the locale remaining at the previous value; the locale " + + "is only changed once the current month is changed."; + } + + @Override + protected Integer getTicketNumber() { + return 12135; + } + +} \ No newline at end of file -- cgit v1.2.3