Class ElementConditions

java.lang.Object
com.vaadin.testbench.unit.ElementConditions

public final class ElementConditions extends Object
A collection of commons predicates to be used as ComponentQuery conditions.
See Also:
  • Method Details

    • containsText

      public static <T extends Component> Predicate<T> containsText(String text)
      Checks if text content of the component contains the given text. Input text is compared with value obtained either by HasText.getText(), Element.getText() if element is a text node, or the normalized version of Html.getInnerHtml(). In all other cases Element.getTextRecursively() is used, but in this case text from nested elements is concatenated without space separators. The comparison is case-sensitive. For Html components the innerHTML tags are stripped and whitespace is normalized and trimmed. For example, given HTML
       

      Hello there now!

      the text that will be checked will be Hello there now!.
      Parameters:
      text - the text the component is expected to have as its content. Not null.
      Returns:
      this element query instance for chaining
      See Also:
    • containsText

      public static <T extends Component> Predicate<T> containsText(String text, boolean ignoreCase)
      Checks if text content of the component contains the given text. Input text is compared with value obtained either by HasText.getText(), Element.getText() if element is a text node, or Html.getInnerHtml(). In all other cases Element.getTextRecursively() is used, but in this case text from nested elements is concatenated without space separators. For Html components the innerHTML tags are stripped and whitespace is normalized and trimmed. For example, given HTML
       

      Hello there now!

      the text that will be checked will be Hello there now!.
      Parameters:
      text - the text the component is expected to have as its content. Not null.
      ignoreCase - flag to indicate if comparison must be case-insensitive.
      Returns:
      this element query instance for chaining
      See Also:
    • hasAttribute

      public static <T extends Component> Predicate<T> hasAttribute(String attribute)
      Checks if the given attribute has been set on the component. Attribute names are considered case-insensitive and all names will be converted to lower case automatically.
      Parameters:
      attribute - the name of the attribute, not null
      Returns:
      true if the attribute has been set, false otherwise
    • hasAttribute

      public static <T extends Component> Predicate<T> hasAttribute(String attribute, String value)
      Checks if the given attribute has been set on the component and has exactly the given value. Attribute names are considered case-insensitive and all names will be converted to lower case automatically.
      Parameters:
      attribute - the name of the attribute, not null
      value - expected value, not null
      Returns:
      true if the attribute has been set, false otherwise
    • hasNotAttribute

      public static <T extends Component> Predicate<T> hasNotAttribute(String attribute)
      Checks if the given attribute has not been set on the component. Attribute names are considered case-insensitive and all names will be converted to lower case automatically.
      Parameters:
      attribute - the name of the attribute, not null
      Returns:
      true if the attribute has not been set, false otherwise
    • hasNotAttribute

      public static <T extends Component> Predicate<T> hasNotAttribute(String attribute, String value)
      Checks if the given attribute has been set on the component or has a value different from given one. Attribute names are considered case-insensitive and all names will be converted to lower case automatically.
      Parameters:
      attribute - the name of the attribute, not null
      value - value expected not to be set on attribute, not null
      Returns:
      true if the attribute is not set or has a value different from given one, false otherwise