Class FluentListAssertion<E,R>

Type Parameters:
E - The element type.
R - The return type.
Direct Known Subclasses:
FluentBeanListAssertion, FluentStringListAssertion, ListAssertion

public class FluentListAssertion<E,R> extends FluentCollectionAssertion<E,R>
  • Constructor Details

    • FluentListAssertion

      public FluentListAssertion(List<E> value, R returns)
      Constructor.
      Parameters:
      value - The object being tested.
      Can be null.
      returns - The object to return after a test method is called.
      If null, the test method returns this object allowing multiple test method calls to be used on the same assertion.
    • FluentListAssertion

      public FluentListAssertion(Assertion creator, List<E> value, R returns)
      Chained constructor.

      Used when transforming one assertion into another so that the assertion config can be used by the new assertion.

      Parameters:
      creator - The assertion that created this assertion.
      Should be null if this is the top-level assertion.
      value - The object being tested.
      Can be null.
      returns - The object to return after a test method is called.
      If null, the test method returns this object allowing multiple test method calls to be used on the same assertion.
  • Method Details

    • asApplied2

      Applies a transform on the inner object and returns a new inner object.
      Parameters:
      function - The transform to apply.
      Returns:
      A new assertion.
    • asItem

      public FluentAnyAssertion<E,R> asItem(int index)
      Returns an object assertion on the item specified at the specified index.

      If the list is null or the index is out-of-bounds, the returned assertion is a null assertion (meaning FluentObjectAssertion.isExists() returns false).

      Parameters:
      index - The index of the item to retrieve from the list.
      Returns:
      A new assertion.
    • asSorted

      Sorts the entries in this list.
      Returns:
      A new list assertion. The contents of the original list remain unchanged.
    • asSorted

      public FluentListAssertion<E,R> asSorted(Comparator<E> comparator)
      Sorts the entries in this list using the specified comparator.
      Parameters:
      comparator - The comparator to use to sort the list.
      Returns:
      A new list assertion. The contents of the original list remain unchanged.
    • asFirst

      Returns the first entry from this list.
      Returns:
      A new list assertion.
    • asLast

      Returns the last entry from this list.
      Returns:
      A new list assertion.
    • asFirst

      public FluentListAssertion<E,R> asFirst(int count)
      Returns the first X number of entries from this list.
      Parameters:
      count - The number of entries in the list to retrieve.
      Returns:
      A new list assertion. The contents of the original list remain unchanged.
    • asLast

      public FluentListAssertion<E,R> asLast(int count)
      Returns the first X number of entries from this list.
      Parameters:
      count - The number of entries in the list to retrieve.
      Returns:
      A new list assertion. The contents of the original list remain unchanged.
    • asSublist

      public FluentListAssertion<E,R> asSublist(int start, int end)
      Returns a sublist of the entries in this list.
      Parameters:
      start - The start index (inclusive).
      end - The end index (exclusive).
      Returns:
      A new list assertion. The contents of the original list remain unchanged.
    • asStrings

      Runs the stringify function against all values in this list and returns it as a fluent string list assertion.
      Parameters:
      function - The function to apply to all values in this list.
      Returns:
      A new fluent string list assertion. Never null.
    • asCdl

      Converts the entries in this list to a simple comma-delimited list and returns the value as a fluent string assertion.
      Returns:
      A fluent string assertion. Never null.
    • asCdl

      Converts the entries to strings using the specified stringify function, combines them into a simple comma-delimited list, and returns the value as a fluent string assertion.
      Parameters:
      function - The function to apply to all values in this list.
      Returns:
      A fluent string assertion. Never null.
    • isHas

      public R isHas(E... entries) throws AssertionError
      Asserts that the contents of this list contain the specified values.
      Parameters:
      entries - The expected entries in this list.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • isEach

      @SafeVarargs public final R isEach(Predicate<E>... tests) throws AssertionError
      Asserts that the contents of this list pass the specified tests.
      Parameters:
      tests - The tests to run. null predicates are ignored.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • setMsg

      public FluentListAssertion<E,R> setMsg(String msg, Object... args)
      Description copied from class: Assertion
      Allows you to override the assertion failure message.

      String can contain "{msg}" to represent the original message.

      Example:

      import static org.apache.juneau.assertions.Assertions.*; // Throws an assertion with a custom message instead of the default "Value was null." assertString(myString) .setMsg("My string was bad: {msg}") .isNotNull();

      Overrides:
      setMsg in class FluentCollectionAssertion<E,R>
      Parameters:
      msg - The assertion failure message.
      args - Optional message arguments.
      Returns:
      This object.
    • setOut

      Description copied from class: Assertion
      If an error occurs, send the error message to the specified stream instead of STDERR.
      Overrides:
      setOut in class FluentCollectionAssertion<E,R>
      Parameters:
      value - The output stream. Can be null to suppress output.
      Returns:
      This object.
    • setSilent

      Description copied from class: Assertion
      Suppresses output to STDERR.

      This is the equivalent to calling out(null).

      Overrides:
      setSilent in class FluentCollectionAssertion<E,R>
      Returns:
      This object.
    • setStdOut

      Description copied from class: Assertion
      If an error occurs, send the error message to STDOUT instead of STDERR.
      Overrides:
      setStdOut in class FluentCollectionAssertion<E,R>
      Returns:
      This object.
    • setThrowable

      Description copied from class: Assertion
      If an error occurs, throw this exception instead of the standard AssertionError.

      The throwable class must have a public constructor that takes in any of the following parameters:

      • Throwable - The caused-by exception (if there is one).
      • String - The assertion failure message.

      If the throwable cannot be instantiated, a RuntimeException is thrown instead.

      Example:

      import static org.apache.juneau.assertions.Assertions.*; // Throws a BadRequest instead of an AssertionError if the string is null. assertString(myString) .setThrowable(BadRequest.class) .isNotNull();

      Overrides:
      setThrowable in class FluentCollectionAssertion<E,R>
      Parameters:
      value - The new value for this setting.
      Returns:
      This object.
    • value

      protected List<E> value() throws AssertionError
      Description copied from class: FluentObjectAssertion
      Returns the inner value after asserting it is not null.
      Overrides:
      value in class FluentObjectAssertion<Collection<E>,R>
      Returns:
      The inner value.
      Throws:
      AssertionError - If inner value was null.