Interface FluentList<E extends FluentWebElement>

Type Parameters:
E - type of element
All Superinterfaces:
Collection<E>, FluentActions<FluentList<E>, E>, FluentJavascriptActions, FluentLabel<FluentList<E>>, FluentProxyState<FluentList<E>>, HookControl<FluentList<E>>, Iterable<E>, List<E>, SearchControl<E>
All Known Implementing Classes:
FluentListImpl

public interface FluentList<E extends FluentWebElement> extends List<E>, FluentActions<FluentList<E>,E>, FluentProxyState<FluentList<E>>, SearchControl<E>, HookControl<FluentList<E>>, FluentLabel<FluentList<E>>
Wraps a list of FluentWebElement. It provides an enhanced API to control list of selenium elements.
  • Method Details

    • first

      E first()
      Retrieve the first element.
      Returns:
      first element
    • single

      E single()
      Retrieve the first element and checks is it exactly one element in the list
      Returns:
      first element
    • last

      E last()
      Retrieve the last element.
      Returns:
      last element
    • index

      E index (int index)
      Retrieve an element at given index.
      Parameters:
      index - position of the element to retrieve
      Returns:
      element at given index
    • toElements

      default List<org.openqa.selenium.WebElement> toElements()
      Creates a list of Selenium WebElement from this list
      Returns:
      list of selenium elements
    • click

      FluentList<E> click()
      Click on all elements on the list Only the clickable elements are clicked
      Specified by:
      click in interface FluentActions<FluentList<E extends FluentWebElement>, E extends FluentWebElement>
      Returns:
      the current instance of FluentList to provide capability for chaining calls
      See Also:
      • WebElement.click()
    • doubleClick

      FluentList<E> doubleClick()
      double click on all elements on the list Only the clickable elements are clicked
      Specified by:
      doubleClick in interface FluentActions<FluentList<E extends FluentWebElement>, E extends FluentWebElement>
      Returns:
      the current instance of FluentList to provide capability for chaining calls
    • contextClick

      FluentList<E> contextClick()
      context click on all elements on the list Only the clickable elements are clicked
      Specified by:
      contextClick in interface FluentActions<FluentList<E extends FluentWebElement>, E extends FluentWebElement>
      Returns:
      the current instance of FluentList to provide capability for chaining calls
    • write

      FluentList<E> write (String... with)
      Fill all elements on the list with the corresponding cell in the with array. Only the visible elements are filled If there are more elements on the list than in the with array, the last element of the table is repeated
      Specified by:
      write in interface FluentActions<FluentList<E extends FluentWebElement>, E extends FluentWebElement>
      Parameters:
      with - one or many text to send.
      Returns:
      the current instance of FluentList to provide capability for chaining calls
      See Also:
      • WebElement.sendKeys(CharSequence...)
    • submit

      FluentList<E> submit()
      submit on all elements on the list Only the visible elements are submitted
      Specified by:
      submit in interface FluentActions<FluentList<E extends FluentWebElement>, E extends FluentWebElement>
      Returns:
      the current instance of FluentList to provide capability for chaining calls
      See Also:
      • WebElement.submit()
    • hoverOver

      default FluentList<E> hoverOver()
      Description copied from interface: FluentActions
      Hovers the mouse over the current element.

      By default, this is a convenience method for calling element.mouse().moveToElement().

      Specified by:
      hoverOver in interface FluentActions<FluentList<E extends FluentWebElement>, E extends FluentWebElement>
      Returns:
      the current element
    • values

      default List<String> values()
      Return the value of elements on the list
      Returns:
      list of string values
    • ids

      default List<String> ids()
      Return the id of elements on the list
      Returns:
      list of string values
    • attributes

      default List<String> attributes (String attribute)
      Return a custom attribute of elements on the list
      Parameters:
      attribute - attribute name
      Returns:
      list of string values
    • names

      default List<String> names()
      Return the name of elements on the list
      Returns:
      list of string values
    • dimensions

      default List<org.openqa.selenium.Dimension> dimensions()
      Return the Dimension of elements on the list
      Returns:
      list of Dimensions
    • tagNames

      default List<String> tagNames()
      Return the tag name of elements on the list
      Returns:
      list of string values
    • texts

      default List<String> texts()
      Return the texts of list elements
      Returns:
      list of string values
    • textContents

      default List<String> textContents()
      Return the text contents of list elements
      Returns:
      list of string values
    • find

      FluentList<E> find (String selector, SearchFilter... filters)
      find elements into the children with the corresponding filters
      Specified by:
      find in interface SearchControl<E extends FluentWebElement>
      Parameters:
      selector - element name
      filters - set of filters
      Returns:
      extended by FluentWebElement objects list
    • find

      FluentList<E> find (SearchFilter... filters)
      find elements in the children with the corresponding filters
      Specified by:
      find in interface SearchControl<E extends FluentWebElement>
      Parameters:
      filters - set of filters
      Returns:
      extended by FluentWebElement objects list
    • count

      int count()
      Count elements without actually loading the lazy list.

      This method ignore defined hooks.

      Returns:
      elements count
    • clearAll

      FluentList<E> clearAll()
      Clear all elements on the list

      Only the visible elements are cleared.

      Returns:
      extended by FluentWebElement object
    • clearAllReactInputs

      FluentList<E> clearAllReactInputs()
      Clear all React elements on the list

      Only the visible elements are cleared.

      Returns:
      extended by FluentWebElement object
    • clear

      void clear()
      Clear visible elements on the list
      Specified by:
      clear in interface Collection<E extends FluentWebElement>
      Specified by:
      clear in interface List<E extends FluentWebElement>
    • clearList

      void clearList()
      Calls List.clear() from underlying List implementation.
      See Also:
    • as

      <T extends FluentWebElement> FluentList<T> as (Class<T> componentClass)
      Wrap all underlying elements in a component.
      Type Parameters:
      T - type of component
      Parameters:
      componentClass - component class
      Returns:
      fluent list of elements as components.
    • each

      Build a condition object on this element list that will match if each underlying element match.
      Returns:
      a condition object
    • one

      Build a condition object on this element list that will match if one or more underlying element match.
      Returns:
      a condition object
    • await

      Build a wait object to wait for a condition of this element list.
      Returns:
      a wait object
    • awaitUntilEach

      FluentListConditions awaitUntilEach()
      Build a condition object on this element list that will match if each underlying element match, automatically waiting for condition to be verified.
      Returns:
      a condition object
    • awaitUntilOne

      FluentListConditions awaitUntilOne()
      Build a condition object on this element list that will match if one or more underlying element match, automatically waiting for condition to be verified.
      Returns:
      a condition object