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.

DateFieldIsValid.java 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package com.vaadin.tests.components.datefield;
  2. import java.time.LocalDate;
  3. import java.time.format.DateTimeFormatter;
  4. import com.vaadin.server.VaadinRequest;
  5. import com.vaadin.tests.components.AbstractTestUIWithLog;
  6. import com.vaadin.tests.components.TestDateField;
  7. import com.vaadin.ui.AbstractLocalDateField;
  8. public class DateFieldIsValid extends AbstractTestUIWithLog {
  9. @Override
  10. protected String getTestDescription() {
  11. return "A dateField with invalid text should return false in isValid both when "
  12. + "handling ValueChange event and after value is changed.";
  13. }
  14. @Override
  15. protected Integer getTicketNumber() {
  16. return 14487;
  17. }
  18. private String pattern = "dd/MM/yy";
  19. private DateTimeFormatter format = DateTimeFormatter.ofPattern(pattern);
  20. @Override
  21. protected void setup(VaadinRequest request) {
  22. final AbstractLocalDateField dateField = new TestDateField(
  23. "Insert Date: ");
  24. dateField.setDateFormat(pattern);
  25. dateField.addValueChangeListener(event -> log("valueChange: value: "
  26. + format(dateField.getValue()) + ", is valid: "
  27. + (dateField.getErrorMessage() == null)));
  28. addComponent(dateField);
  29. addButton("check dateField",
  30. event -> log("buttonClick: value: "
  31. + format(dateField.getValue()) + ", is valid: "
  32. + (dateField.getErrorMessage() == null)));
  33. }
  34. protected String format(LocalDate value) {
  35. if (value != null) {
  36. return format.format(value);
  37. } else {
  38. return null;
  39. }
  40. }
  41. }