Class DatePickerTester<T extends DatePicker>

java.lang.Object
com.vaadin.browserless.ComponentTester<T>
com.vaadin.flow.component.datepicker.DatePickerTester<T>
Type Parameters:
T - component type
All Implemented Interfaces:
Clickable<T>

public class DatePickerTester<T extends DatePicker> extends ComponentTester<T>
Tester for the DatePicker components.
Since:
1.0
  • Constructor Details

    • DatePickerTester

      public DatePickerTester(T component)
      Wrap given component for testing.
      Parameters:
      component - target component
  • Method Details

    • setValue

      public void setValue(LocalDate date)
      Set the given date as value to the component, as the user would enter it.

      A date that violates the component's constraints ? outside min - max, or the empty value on a required field ? is committed all the same, because the browser commits it too and simply leaves the field invalid. Assert that outcome with isValid() instead of expecting this method to throw.

      Parameters:
      date - date to set to the component
      Throws:
      IllegalStateException - if the component is not usable
    • isValid

      public boolean isValid()
      Checks whether the field is currently valid, applying the same constraints as the component itself ? required, min and max ? and honouring an invalid state set from the outside, as a Binder or a custom validator does.

      A field can hold a value that does not satisfy its constraints ? the user can type one, setValue(LocalDate) commits it as the browser does, and the value can also be set on the server ? so a test asserting on validation state checks this instead of expecting a value to be refused.

      Returns:
      true if the field is not marked invalid and its current value satisfies the constraints of the field
    • clear

      public void clear()
      Empties the field, as when the user deletes its contents (or clicks the clear button, where one is shown).

      Emptying is something the user can always do, so it needs no clear button: a field may legitimately end up invalid ? a required field, for instance ? once emptied.

      Throws:
      IllegalStateException - if the component is not usable
    • clickClearButton

      public void clickClearButton()
      Empties the field by clicking its clear button, as the user would.

      Unlike clear(), which models selecting the contents and deleting them and is therefore always available, this requires the clear button to be visible ? a hidden clear button is not something the user can click.

      Throws:
      IllegalStateException - if the component is not usable, or its clear button is not visible