Class FluentArrayAssertion<E,R>

Type Parameters:
E - The entry type.
R - The return type.
Direct Known Subclasses:
ArrayAssertion

public class FluentArrayAssertion<E,R> extends FluentObjectAssertion<E[],R>
  • Constructor Details

    • FluentArrayAssertion

      public FluentArrayAssertion(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.
    • FluentArrayAssertion

      public FluentArrayAssertion(Assertion creator, 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

    • asTransformed

      public FluentArrayAssertion<E,R> asTransformed(Function<E[],E[]> function)
      Description copied from class: FluentObjectAssertion
      Applies a transform on the inner object and returns a new inner object.
      Overrides:
      asTransformed in class FluentObjectAssertion<E[],R>
      Parameters:
      function - The function to apply.
      Returns:
      This object.
    • asString

      Description copied from class: FluentObjectAssertion
      Converts this object to a string using Object.toString() and returns it as a new assertion.
      Example:

      // Validates that the specified object is "foobar" after converting to a string. assertObject(myPojo) .asString() .is("foobar");

      Overrides:
      asString in class FluentObjectAssertion<E[],R>
      Returns:
      A new fluent string assertion.
    • asStrings

      Converts this assertion into a FluentListAssertion of strings.
      Returns:
      A new fluent string assertion.
    • 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.
    • asBeanList

      Converts this assertion into a FluentBeanListAssertion.
      Example:

      // Extracts the 'foo' property from an array of beans and validates their values.. assertObject(myArrayOfBeans) .asBeanList() .asProperty("foo") .asSorted() .equals("value1","value2","value3");

      Returns:
      A new fluent string assertion.
    • asItem

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

      If the array 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 array.
      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.
    • 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:
      This object.
      Throws:
      AssertionError - If assertion failed.
    • is

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

      public R isAny(Predicate<E> test) throws AssertionError
      Asserts that at least one value in the array passes the specified test.
      Parameters:
      test - The predicate test.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed or value was null.
    • isAll

      public R isAll(Predicate<E> test) throws AssertionError
      Asserts that all values in the array passes the specified test.
      Parameters:
      test - The predicate test.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed or value was null.
    • isEmpty

      public R isEmpty() throws AssertionError
      Asserts that the collection exists and is empty.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • isNotEmpty

      public R isNotEmpty() throws AssertionError
      Asserts that the collection exists and is not empty.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • isSize

      public R isSize(int size) throws AssertionError
      Asserts that the collection exists and is the specified size.
      Parameters:
      size - The expected size.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • isContains

      public R isContains(E entry) throws AssertionError
      Asserts that the array contains the expected value.
      Parameters:
      entry - The value to check for.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • isNotContains

      public R isNotContains(E entry) throws AssertionError
      Asserts that the array does not contain the expected value.
      Parameters:
      entry - The value to check for.
      Returns:
      The fluent return object.
      Throws:
      AssertionError - If assertion failed.
    • setMsg

      public FluentArrayAssertion<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 FluentObjectAssertion<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 FluentObjectAssertion<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 FluentObjectAssertion<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 FluentObjectAssertion<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 FluentObjectAssertion<E[],R>
      Parameters:
      value - The new value for this setting.
      Returns:
      This object.
    • toString

      public String toString()
      Description copied from class: FluentObjectAssertion
      Returns the string form of the inner object. Subclasses can override this method to affect the FluentObjectAssertion.asString() method (and related).
      Overrides:
      toString in class FluentObjectAssertion<E[],R>