You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

DateFormTest.java 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package com.vaadin.tests.fieldgroup;
  2. import static org.junit.Assert.assertEquals;
  3. import static org.junit.Assert.assertTrue;
  4. import java.text.SimpleDateFormat;
  5. import java.util.Locale;
  6. import org.junit.Test;
  7. import org.openqa.selenium.WebElement;
  8. import com.vaadin.testbench.By;
  9. import com.vaadin.testbench.elements.DateFieldElement;
  10. import com.vaadin.testbench.elements.InlineDateFieldElement;
  11. import com.vaadin.testbench.elements.TextFieldElement;
  12. import com.vaadin.tests.tb3.MultiBrowserTest;
  13. public class DateFormTest extends MultiBrowserTest {
  14. private final SimpleDateFormat FORMAT = new SimpleDateFormat(
  15. "MMM dd, yyyy h:mm:ss a");
  16. @Test
  17. public void testCorrectDateFormat() throws Exception {
  18. openTestURL();
  19. assertEquals("Unexpected DateField value,", "1/20/84",
  20. getDateFieldValue());
  21. assertEquals("Unexpected PopupDateField value,", "1/21/84",
  22. getPopupDateFieldValue());
  23. WebElement day20 = getInlineDateFieldCalendarPanel()
  24. .findElement(By.vaadin("#day20"));
  25. assertTrue("Unexpected InlineDateField state, 20th not selected.",
  26. hasCssClass(day20,
  27. "v-inline-datefield-calendarpanel-day-selected"));
  28. // Depends on the TZ offset on the server
  29. assertEquals("Unexpected TextField contents,",
  30. FORMAT.format(DateForm.DATE),
  31. $(TextFieldElement.class).first().getValue());
  32. }
  33. protected String getDateFieldValue() {
  34. return $(DateFieldElement.class).first().getValue();
  35. }
  36. protected String getPopupDateFieldValue() {
  37. return $(DateFieldElement.class).get(1).getValue();
  38. }
  39. protected WebElement getInlineDateFieldCalendarPanel() {
  40. return $(InlineDateFieldElement.class).first()
  41. .findElement(By.className("v-inline-datefield-calendarpanel"));
  42. }
  43. }