Class Assertions

java.lang.Object
org.junit.jupiter.api.Assertions

@API(status=STABLE, since="5.0") public class Assertions extends Object
Assertions is a collection of utility methods that support asserting conditions in tests.

Unless otherwise noted, a failed assertion will throw an AssertionFailedError or a subclass thereof.

Object Equality

Assertion methods comparing two objects for equality, such as the assertEquals(expected, actual) and assertNotEquals(unexpected, actual) variants, are only intended to test equality for an (un-)expected value and an actual value. They are not designed for testing whether a class correctly implements Object.equals(Object). For example, assertEquals() might immediately return true when provided the same object for the expected and actual values, without calling equals(Object) at all. Tests that aim to verify the equals(Object) implementation should instead be written to explicitly verify the Object.equals(Object) contract by using assertTrue() or assertFalse() — for example, assertTrue(expected.equals(actual)), assertTrue(actual.equals(expected)), assertFalse(expected.equals(null)), etc.

Kotlin Support

Additional Kotlin assertions can be found as top-level functions in the org.junit.jupiter.api package.

Preemptive Timeouts

The various assertTimeoutPreemptively() methods in this class execute the provided executable or supplier in a different thread than that of the calling code. This behavior can lead to undesirable side effects if the code that is executed within the executable or supplier relies on ThreadLocal storage.

One common example of this is the transactional testing support in the Spring Framework. Specifically, Spring's testing support binds transaction state to the current thread (via a ThreadLocal) before a test method is invoked. Consequently, if an executable or supplier provided to assertTimeoutPreemptively() invokes Spring-managed components that participate in transactions, any actions taken by those components will not be rolled back with the test-managed transaction. On the contrary, such actions will be committed to the persistent store (e.g., relational database) even though the test-managed transaction is rolled back.

Similar side effects may be encountered with other frameworks that rely on ThreadLocal storage.

Extensibility

Although it is technically possible to extend this class, extension is strongly discouraged. The JUnit Team highly recommends that the methods defined in this class be used via static imports.

Since:
5.0
See Also:
  • Constructor Details

    • Assertions

      @API(status=STABLE, since="5.3") protected Assertions()
      Protected constructor allowing subclassing but not direct instantiation.
      Since:
      5.3
  • Method Details

    • fail

      public static <V> V fail()
      Fail the test without a failure message.

      Although failing with an explicit failure message is recommended, this method may be useful when maintaining legacy code.

      See Javadoc for fail(String) for an explanation of this method's generic return type V.

    • fail

      public static <V> V fail(String message)
      Fail the test with the given failure message.

      The generic return type V allows this method to be used directly as a single-statement lambda expression, thereby avoiding the need to implement a code block with an explicit return value. Since this method throws an AssertionFailedError before its return statement, this method never actually returns a value to its caller. The following example demonstrates how this may be used in practice.

      
       Stream.of().map(entry -> fail("should not be called"));
       
    • fail

      public static <V> V fail(String message, Throwable cause)
      Fail the test with the given failure message as well as the underlying cause.

      See Javadoc for fail(String) for an explanation of this method's generic return type V.

    • fail

      public static <V> V fail(Throwable cause)
      Fail the test with the given underlying cause.

      See Javadoc for fail(String) for an explanation of this method's generic return type V.

    • fail

      public static <V> V fail(Supplier<String> messageSupplier)
      Fail the test with the failure message retrieved from the given messageSupplier.

      See Javadoc for fail(String) for an explanation of this method's generic return type V.

    • assertTrue

      public static void assertTrue(boolean condition)
      Assert that the supplied condition is true.
    • assertTrue

      public static void assertTrue(boolean condition, Supplier<String> messageSupplier)
      Assert that the supplied condition is true.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertTrue

      public static void assertTrue(BooleanSupplier booleanSupplier)
      Assert that the boolean condition supplied by booleanSupplier is true.
    • assertTrue

      public static void assertTrue(BooleanSupplier booleanSupplier, String message)
      Assert that the boolean condition supplied by booleanSupplier is true.

      Fails with the supplied failure message.

    • assertTrue

      public static void assertTrue(boolean condition, String message)
      Assert that the supplied condition is true.

      Fails with the supplied failure message.

    • assertTrue

      public static void assertTrue(BooleanSupplier booleanSupplier, Supplier<String> messageSupplier)
      Assert that the boolean condition supplied by booleanSupplier is true.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertFalse

      public static void assertFalse(boolean condition)
      Assert that the supplied condition is false.
    • assertFalse

      public static void assertFalse(boolean condition, String message)
      Assert that the supplied condition is false.

      Fails with the supplied failure message.

    • assertFalse

      public static void assertFalse(boolean condition, Supplier<String> messageSupplier)
      Assert that the supplied condition is false.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertFalse

      public static void assertFalse(BooleanSupplier booleanSupplier)
      Assert that the boolean condition supplied by booleanSupplier is false.
    • assertFalse

      public static void assertFalse(BooleanSupplier booleanSupplier, String message)
      Assert that the boolean condition supplied by booleanSupplier is false.

      Fails with the supplied failure message.

    • assertFalse

      public static void assertFalse(BooleanSupplier booleanSupplier, Supplier<String> messageSupplier)
      Assert that the boolean condition supplied by booleanSupplier is false.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertNull

      public static void assertNull(Object actual)
      Assert that actual is null.
    • assertNull

      public static void assertNull(Object actual, String message)
      Assert that actual is null.

      Fails with the supplied failure message.

    • assertNull

      public static void assertNull(Object actual, Supplier<String> messageSupplier)
      Assert that actual is null.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertNotNull

      public static void assertNotNull(Object actual)
      Assert that actual is not null.
    • assertNotNull

      public static void assertNotNull(Object actual, String message)
      Assert that actual is not null.

      Fails with the supplied failure message.

    • assertNotNull

      public static void assertNotNull(Object actual, Supplier<String> messageSupplier)
      Assert that actual is not null.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(short expected, short actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(short expected, Short actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(Short expected, short actual)
      Assert that expected and actual are equal.
    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Short expected, Short actual)
      Assert that expected and actual are equal.
      Since:
      5.4
    • assertEquals

      public static void assertEquals(short expected, short actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(short expected, Short actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Short expected, short actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Short expected, Short actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(short expected, short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(short expected, Short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Short expected, short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Short expected, Short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(byte expected, byte actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(byte expected, Byte actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(Byte expected, byte actual)
      Assert that expected and actual are equal.
    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Byte expected, Byte actual)
      Assert that expected and actual are equal.
      Since:
      5.4
    • assertEquals

      public static void assertEquals(byte expected, byte actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(byte expected, Byte actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Byte expected, byte actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Byte expected, Byte actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(byte expected, byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(byte expected, Byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Byte expected, byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Byte expected, Byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(int expected, int actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(int expected, Integer actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(Integer expected, int actual)
      Assert that expected and actual are equal.
    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Integer expected, Integer actual)
      Assert that expected and actual are equal.
      Since:
      5.4
    • assertEquals

      public static void assertEquals(int expected, int actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(int expected, Integer actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Integer expected, int actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Integer expected, Integer actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(int expected, int actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(int expected, Integer actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Integer expected, int actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Integer expected, Integer actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(long expected, long actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(long expected, Long actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(Long expected, long actual)
      Assert that expected and actual are equal.
    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Long expected, Long actual)
      Assert that expected and actual are equal.
      Since:
      5.4
    • assertEquals

      public static void assertEquals(long expected, long actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(long expected, Long actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Long expected, long actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Long expected, Long actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(long expected, long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(long expected, Long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Long expected, long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Long expected, Long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(float expected, float actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

    • assertEquals

      public static void assertEquals(float expected, Float actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

    • assertEquals

      public static void assertEquals(Float expected, float actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Float expected, Float actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertEquals

      public static void assertEquals(float expected, float actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(float expected, Float actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Float expected, float actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Float expected, Float actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(float expected, float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(float expected, Float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Float expected, float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Float expected, Float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(float expected, float actual, float delta)
      Assert that expected and actual are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

    • assertEquals

      public static void assertEquals(float expected, float actual, float delta, String message)
      Assert that expected and actual are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(float expected, float actual, float delta, Supplier<String> messageSupplier)
      Assert that expected and actual are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(double expected, double actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

    • assertEquals

      public static void assertEquals(double expected, Double actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

    • assertEquals

      public static void assertEquals(Double expected, double actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Double expected, Double actual)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertEquals

      public static void assertEquals(double expected, double actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(double expected, Double actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Double expected, double actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Double expected, Double actual, String message)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(double expected, double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(double expected, Double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Double expected, double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Double expected, Double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(double expected, double actual, double delta)
      Assert that expected and actual are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

    • assertEquals

      public static void assertEquals(double expected, double actual, double delta, String message)
      Assert that expected and actual are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(double expected, double actual, double delta, Supplier<String> messageSupplier)
      Assert that expected and actual are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(char expected, char actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(char expected, Character actual)
      Assert that expected and actual are equal.
    • assertEquals

      public static void assertEquals(Character expected, char actual)
      Assert that expected and actual are equal.
    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Character expected, Character actual)
      Assert that expected and actual are equal.
      Since:
      5.4
    • assertEquals

      public static void assertEquals(char expected, char actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(char expected, Character actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      public static void assertEquals(Character expected, char actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Character expected, Character actual, String message)
      Assert that expected and actual are equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(char expected, char actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(char expected, Character actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      public static void assertEquals(Character expected, char actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertEquals

      @API(status=STABLE, since="5.4") public static void assertEquals(Character expected, Character actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertEquals

      public static void assertEquals(Object expected, Object actual)
      Assert that expected and actual are equal.

      If both are null, they are considered equal.

      See Also:
    • assertEquals

      public static void assertEquals(Object expected, Object actual, String message)
      Assert that expected and actual are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

      See Also:
    • assertEquals

      public static void assertEquals(Object expected, Object actual, Supplier<String> messageSupplier)
      Assert that expected and actual are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertArrayEquals

      public static void assertArrayEquals(boolean[] expected, boolean[] actual)
      Assert that expected and actual boolean arrays are equal.

      If both are null, they are considered equal.

    • assertArrayEquals

      public static void assertArrayEquals(boolean[] expected, boolean[] actual, String message)
      Assert that expected and actual boolean arrays are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(boolean[] expected, boolean[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual boolean arrays are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(char[] expected, char[] actual)
      Assert that expected and actual char arrays are equal.

      If both are null, they are considered equal.

    • assertArrayEquals

      public static void assertArrayEquals(char[] expected, char[] actual, String message)
      Assert that expected and actual char arrays are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(char[] expected, char[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual char arrays are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(byte[] expected, byte[] actual)
      Assert that expected and actual byte arrays are equal.

      If both are null, they are considered equal.

    • assertArrayEquals

      public static void assertArrayEquals(byte[] expected, byte[] actual, String message)
      Assert that expected and actual byte arrays are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(byte[] expected, byte[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual byte arrays are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(short[] expected, short[] actual)
      Assert that expected and actual short arrays are equal.

      If both are null, they are considered equal.

    • assertArrayEquals

      public static void assertArrayEquals(short[] expected, short[] actual, String message)
      Assert that expected and actual short arrays are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(short[] expected, short[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual short arrays are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(int[] expected, int[] actual)
      Assert that expected and actual int arrays are equal.

      If both are null, they are considered equal.

    • assertArrayEquals

      public static void assertArrayEquals(int[] expected, int[] actual, String message)
      Assert that expected and actual int arrays are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(int[] expected, int[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual int arrays are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(long[] expected, long[] actual)
      Assert that expected and actual long arrays are equal.

      If both are null, they are considered equal.

    • assertArrayEquals

      public static void assertArrayEquals(long[] expected, long[] actual, String message)
      Assert that expected and actual long arrays are equal.

      If both are null, they are considered equal.

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(long[] expected, long[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual long arrays are equal.

      If both are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(float[] expected, float[] actual)
      Assert that expected and actual float arrays are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

    • assertArrayEquals

      public static void assertArrayEquals(float[] expected, float[] actual, String message)
      Assert that expected and actual float arrays are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(float[] expected, float[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual float arrays are equal.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(float[] expected, float[] actual, float delta)
      Assert that expected and actual float arrays are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

    • assertArrayEquals

      public static void assertArrayEquals(float[] expected, float[] actual, float delta, String message)
      Assert that expected and actual float arrays are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(float[] expected, float[] actual, float delta, Supplier<String> messageSupplier)
      Assert that expected and actual float arrays are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(double[] expected, double[] actual)
      Assert that expected and actual double arrays are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

    • assertArrayEquals

      public static void assertArrayEquals(double[] expected, double[] actual, String message)
      Assert that expected and actual double arrays are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(double[] expected, double[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual double arrays are equal.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(double[] expected, double[] actual, double delta)
      Assert that expected and actual double arrays are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

    • assertArrayEquals

      public static void assertArrayEquals(double[] expected, double[] actual, double delta, String message)
      Assert that expected and actual double arrays are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

    • assertArrayEquals

      public static void assertArrayEquals(double[] expected, double[] actual, double delta, Supplier<String> messageSupplier)
      Assert that expected and actual double arrays are equal within the given non-negative delta.

      Equality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertArrayEquals

      public static void assertArrayEquals(Object[] expected, Object[] actual)
      Assert that expected and actual object arrays are deeply equal.

      If both are null, they are considered equal.

      Nested float arrays are checked as in assertEquals(float, float).

      Nested double arrays are checked as in assertEquals(double, double).

      See Also:
    • assertArrayEquals

      public static void assertArrayEquals(Object[] expected, Object[] actual, String message)
      Assert that expected and actual object arrays are deeply equal.

      If both are null, they are considered equal.

      Nested float arrays are checked as in assertEquals(float, float).

      Nested double arrays are checked as in assertEquals(double, double).

      Fails with the supplied failure message.

      See Also:
    • assertArrayEquals

      public static void assertArrayEquals(Object[] expected, Object[] actual, Supplier<String> messageSupplier)
      Assert that expected and actual object arrays are deeply equal.

      If both are null, they are considered equal.

      Nested float arrays are checked as in assertEquals(float, float).

      Nested double arrays are checked as in assertEquals(double, double).

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertIterableEquals

      public static void assertIterableEquals(Iterable<?> expected, Iterable<?> actual)
      Assert that expected and actual iterables are deeply equal.

      Similarly to the check for deep equality in assertArrayEquals(Object[], Object[]), if two iterables are encountered (including expected and actual) then their iterators must return equal elements in the same order as each other. Note: this means that the iterables do not need to be of the same type. Example:

      
       import static java.util.Arrays.asList;
        . . .
       Iterable<Integer> i0 = new ArrayList<>(asList(1, 2, 3));
       Iterable<Integer> i1 = new LinkedList<>(asList(1, 2, 3));
       assertIterableEquals(i0, i1); // Passes
       

      If both expected and actual are null, they are considered equal.

      See Also:
    • assertIterableEquals

      public static void assertIterableEquals(Iterable<?> expected, Iterable<?> actual, String message)
      Assert that expected and actual iterables are deeply equal.

      Similarly to the check for deep equality in assertArrayEquals(Object[], Object[], String), if two iterables are encountered (including expected and actual) then their iterators must return equal elements in the same order as each other. Note: this means that the iterables do not need to be of the same type. Example:

      
       import static java.util.Arrays.asList;
        . . .
       Iterable<Integer> i0 = new ArrayList<>(asList(1, 2, 3));
       Iterable<Integer> i1 = new LinkedList<>(asList(1, 2, 3));
       assertIterableEquals(i0, i1); // Passes
       

      If both expected and actual are null, they are considered equal.

      Fails with the supplied failure message.

      See Also:
    • assertIterableEquals

      public static void assertIterableEquals(Iterable<?> expected, Iterable<?> actual, Supplier<String> messageSupplier)
      Assert that expected and actual iterables are deeply equal.

      Similarly to the check for deep equality in assertArrayEquals(Object[], Object[], Supplier), if two iterables are encountered (including expected and actual) then their iterators must return equal elements in the same order as each other. Note: this means that the iterables do not need to be of the same type. Example:

      
       import static java.util.Arrays.asList;
        . . .
       Iterable<Integer> i0 = new ArrayList<>(asList(1, 2, 3));
       Iterable<Integer> i1 = new LinkedList<>(asList(1, 2, 3));
       assertIterableEquals(i0, i1); // Passes
       

      If both expected and actual are null, they are considered equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertLinesMatch

      public static void assertLinesMatch(List<String> expectedLines, List<String> actualLines)
      Assert that expected list of Strings matches actual list.

      This method differs from other assertions that effectively only check String.equals(Object), in that it uses the following staged matching algorithm:

      For each pair of expected and actual lines do

      1. check if expected.equals(actual) - if yes, continue with next pair
      2. otherwise treat expected as a regular expression and check via String.matches(String) - if yes, continue with next pair
      3. otherwise check if expected line is a fast-forward marker, if yes apply fast-forward actual lines accordingly (see below) and goto 1.

      A valid fast-forward marker is an expected line that starts and ends with the literal >> and contains at least 4 characters. Examples:

      • >>>>
        >> stacktrace >>
        >> single line, non Integer.parse()-able comment >>
        Skip arbitrary number of actual lines, until first matching subsequent expected line is found. Any character between the fast-forward literals are discarded.
      • ">> 21 >>"
        Skip strictly 21 lines. If they can't be skipped for any reason, an assertion error is raised.

      Here is an example showing all three kinds of expected line formats:

      
       ls -la /
       total [\d]+
       drwxr-xr-x  0 root root   512 Jan  1  1970 .
       drwxr-xr-x  0 root root   512 Jan  1  1970 ..
       drwxr-xr-x  0 root root   512 Apr  5 07:45 bin
       >> 4 >>
       -rwxr-xr-x  1 root root [\d]+ Jan  1  1970 init
       >> M A N Y  M O R E  E N T R I E S >>
       drwxr-xr-x  0 root root   512 Sep 22  2017 var
       

      Fails with a generated failure message describing the difference.

    • assertLinesMatch

      public static void assertLinesMatch(List<String> expectedLines, List<String> actualLines, String message)
      Assert that expected list of Strings matches actual list.

      Find a detailed description of the matching algorithm in assertLinesMatch(List, List).

      Fails with the supplied failure message and the generated message.

      See Also:
    • assertLinesMatch

      public static void assertLinesMatch(List<String> expectedLines, List<String> actualLines, Supplier<String> messageSupplier)
      Assert that expected list of Strings matches actual list.

      Find a detailed description of the matching algorithm in assertLinesMatch(List, List).

      If necessary, a custom failure message will be retrieved lazily from the supplied messageSupplier. Fails with the custom failure message prepended to a generated failure message describing the difference.

      See Also:
    • assertLinesMatch

      public static void assertLinesMatch(Stream<String> expectedLines, Stream<String> actualLines)
      Assert that expected stream of Strings matches actual stream.

      Find a detailed description of the matching algorithm in assertLinesMatch(List, List).

      Note: An implementation of this method may consume all lines of both streams eagerly and delegate the evaluation to assertLinesMatch(List, List).

      Since:
      5.7
      See Also:
    • assertLinesMatch

      public static void assertLinesMatch(Stream<String> expectedLines, Stream<String> actualLines, String message)
      Assert that expected stream of Strings matches actual stream.

      Find a detailed description of the matching algorithm in assertLinesMatch(List, List).

      Fails with the supplied failure message and the generated message.

      Note: An implementation of this method may consume all lines of both streams eagerly and delegate the evaluation to assertLinesMatch(List, List).

      Since:
      5.7
      See Also:
    • assertLinesMatch

      public static void assertLinesMatch(Stream<String> expectedLines, Stream<String> actualLines, Supplier<String> messageSupplier)
      Assert that expected stream of Strings matches actual stream.

      Find a detailed description of the matching algorithm in assertLinesMatch(List, List).

      If necessary, a custom failure message will be retrieved lazily from the supplied messageSupplier. Fails with the custom failure message prepended to a generated failure message describing the difference.

      Note: An implementation of this method may consume all lines of both streams eagerly and delegate the evaluation to assertLinesMatch(List, List).

      Since:
      5.7
      See Also:
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(byte unexpected, byte actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(byte unexpected, Byte actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Byte unexpected, byte actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Byte unexpected, Byte actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(byte unexpected, byte actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(byte unexpected, Byte actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Byte unexpected, byte actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Byte unexpected, Byte actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(byte unexpected, byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(byte unexpected, Byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Byte unexpected, byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Byte unexpected, Byte actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(short unexpected, short actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(short unexpected, Short actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Short unexpected, short actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Short unexpected, Short actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(short unexpected, short actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(short unexpected, Short actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Short unexpected, short actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Short unexpected, Short actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(short unexpected, short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(short unexpected, Short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Short unexpected, short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Short unexpected, Short actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(int unexpected, int actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(int unexpected, Integer actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Integer unexpected, int actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Integer unexpected, Integer actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(int unexpected, int actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(int unexpected, Integer actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Integer unexpected, int actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Integer unexpected, Integer actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(int unexpected, int actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(int unexpected, Integer actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Integer unexpected, int actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Integer unexpected, Integer actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(long unexpected, long actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(long unexpected, Long actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Long unexpected, long actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Long unexpected, Long actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(long unexpected, long actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(long unexpected, Long actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Long unexpected, long actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Long unexpected, Long actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(long unexpected, long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(long unexpected, Long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Long unexpected, long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Long unexpected, Long actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, float actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, Float actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Float unexpected, float actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Float unexpected, Float actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, float actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, Float actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Float unexpected, float actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Float unexpected, Float actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, Float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Float unexpected, float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Float unexpected, Float actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, float actual, float delta)
      Assert that expected and actual are not equal within the given delta.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, float actual, float delta, String message)
      Assert that expected and actual are not equal within the given delta.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(float unexpected, float actual, float delta, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal within the given delta.

      Inequality imposed by this method is consistent with Float.equals(Object) and Float.compare(float, float).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, double actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, Double actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Double unexpected, double actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Double unexpected, Double actual)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, double actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, Double actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Double unexpected, double actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Double unexpected, Double actual, String message)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, Double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Double unexpected, double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Double unexpected, Double actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, double actual, double delta)
      Assert that expected and actual are not equal within the given delta.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, double actual, double delta, String message)
      Assert that expected and actual are not equal within the given delta.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(double unexpected, double actual, double delta, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal within the given delta.

      Inequality imposed by this method is consistent with Double.equals(Object) and Double.compare(double, double).

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(char unexpected, char actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(char unexpected, Character actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Character unexpected, char actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Character unexpected, Character actual)
      Assert that expected and actual are not equal.
      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(char unexpected, char actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(char unexpected, Character actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Character unexpected, char actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Character unexpected, Character actual, String message)
      Assert that expected and actual are not equal.

      Fails with the supplied failure message.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(char unexpected, char actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(char unexpected, Character actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Character unexpected, char actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      @API(status=STABLE, since="5.4") public static void assertNotEquals(Character unexpected, Character actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.4
    • assertNotEquals

      public static void assertNotEquals(Object unexpected, Object actual)
      Assert that expected and actual are not equal.

      Fails if both are null.

      See Also:
    • assertNotEquals

      public static void assertNotEquals(Object unexpected, Object actual, String message)
      Assert that expected and actual are not equal.

      Fails if both are null.

      Fails with the supplied failure message.

      See Also:
    • assertNotEquals

      public static void assertNotEquals(Object unexpected, Object actual, Supplier<String> messageSupplier)
      Assert that expected and actual are not equal.

      Fails if both are null.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertSame

      public static void assertSame(Object expected, Object actual)
      Assert that expected and actual refer to the same object.
    • assertSame

      public static void assertSame(Object expected, Object actual, String message)
      Assert that expected and actual refer to the same object.

      Fails with the supplied failure message.

    • assertSame

      public static void assertSame(Object expected, Object actual, Supplier<String> messageSupplier)
      Assert that expected and actual refer to the same object.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertNotSame

      public static void assertNotSame(Object unexpected, Object actual)
      Assert that expected and actual do not refer to the same object.
    • assertNotSame

      public static void assertNotSame(Object unexpected, Object actual, String message)
      Assert that expected and actual do not refer to the same object.

      Fails with the supplied failure message.

    • assertNotSame

      public static void assertNotSame(Object unexpected, Object actual, Supplier<String> messageSupplier)
      Assert that expected and actual do not refer to the same object.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

    • assertAll

      public static void assertAll(Executable... executables) throws MultipleFailuresError
      Assert that all supplied executables do not throw exceptions.

      See Javadoc for assertAll(String, Stream) for an explanation of this method's exception handling semantics.

      Throws:
      MultipleFailuresError
      See Also:
    • assertAll

      public static void assertAll(String heading, Executable... executables) throws MultipleFailuresError
      Assert that all supplied executables do not throw exceptions.

      See Javadoc for assertAll(String, Stream) for an explanation of this method's exception handling semantics.

      Throws:
      MultipleFailuresError
      See Also:
    • assertAll

      public static void assertAll(Collection<Executable> executables) throws MultipleFailuresError
      Assert that all supplied executables do not throw exceptions.

      See Javadoc for assertAll(String, Stream) for an explanation of this method's exception handling semantics.

      Throws:
      MultipleFailuresError
      See Also:
    • assertAll

      public static void assertAll(String heading, Collection<Executable> executables) throws MultipleFailuresError
      Assert that all supplied executables do not throw exceptions.

      See Javadoc for assertAll(String, Stream) for an explanation of this method's exception handling semantics.

      Throws:
      MultipleFailuresError
      See Also:
    • assertAll

      public static void assertAll(Stream<Executable> executables) throws MultipleFailuresError
      Assert that all supplied executables do not throw exceptions.

      See Javadoc for assertAll(String, Stream) for an explanation of this method's exception handling semantics.

      Throws:
      MultipleFailuresError
      See Also:
    • assertAll

      public static void assertAll(String heading, Stream<Executable> executables) throws MultipleFailuresError
      Assert that all supplied executables do not throw exceptions.

      If any supplied Executable throws an exception (i.e., a Throwable or any subclass thereof), all remaining executables will still be executed, and all exceptions will be aggregated and reported in a MultipleFailuresError. In addition, all aggregated exceptions will be added as suppressed exceptions to the MultipleFailuresError. However, if an executable throws an unrecoverable exception — for example, an OutOfMemoryError — execution will halt immediately, and the unrecoverable exception will be rethrown as is but masked as an unchecked exception.

      The supplied heading will be included in the message string for the MultipleFailuresError.

      Throws:
      MultipleFailuresError
      See Also:
    • assertThrowsExactly

      @API(status=EXPERIMENTAL, since="5.8") public static <T extends Throwable> T assertThrowsExactly(Class<T> expectedType, Executable executable)
      Assert that execution of the supplied executable throws an exception of exactly the expectedType and return the exception.

      If no exception is thrown, or if an exception of a different type is thrown, this method will fail.

      If you do not want to perform additional checks on the exception instance, ignore the return value.

      Since:
      5.8
    • assertThrowsExactly

      @API(status=EXPERIMENTAL, since="5.8") public static <T extends Throwable> T assertThrowsExactly(Class<T> expectedType, Executable executable, String message)
      Assert that execution of the supplied executable throws an exception of exactly the expectedType and return the exception.

      If no exception is thrown, or if an exception of a different type is thrown, this method will fail.

      If you do not want to perform additional checks on the exception instance, ignore the return value.

      Fails with the supplied failure message.

      Since:
      5.8
    • assertThrowsExactly

      @API(status=EXPERIMENTAL, since="5.8") public static <T extends Throwable> T assertThrowsExactly(Class<T> expectedType, Executable executable, Supplier<String> messageSupplier)
      Assert that execution of the supplied executable throws an exception of exactly the expectedType and return the exception.

      If no exception is thrown, or if an exception of a different type is thrown, this method will fail.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      If you do not want to perform additional checks on the exception instance, ignore the return value.

      Since:
      5.8
    • assertThrows

      public static <T extends Throwable> T assertThrows(Class<T> expectedType, Executable executable)
      Assert that execution of the supplied executable throws an exception of the expectedType and return the exception.

      If no exception is thrown, or if an exception of a different type is thrown, this method will fail.

      If you do not want to perform additional checks on the exception instance, ignore the return value.

    • assertThrows

      public static <T extends Throwable> T assertThrows(Class<T> expectedType, Executable executable, String message)
      Assert that execution of the supplied executable throws an exception of the expectedType and return the exception.

      If no exception is thrown, or if an exception of a different type is thrown, this method will fail.

      If you do not want to perform additional checks on the exception instance, ignore the return value.

      Fails with the supplied failure message.

    • assertThrows

      public static <T extends Throwable> T assertThrows(Class<T> expectedType, Executable executable, Supplier<String> messageSupplier)
      Assert that execution of the supplied executable throws an exception of the expectedType and return the exception.

      If no exception is thrown, or if an exception of a different type is thrown, this method will fail.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      If you do not want to perform additional checks on the exception instance, ignore the return value.

    • assertDoesNotThrow

      @API(status=STABLE, since="5.2") public static void assertDoesNotThrow(Executable executable)
      Assert that execution of the supplied executable does not throw any kind of exception.

      Usage Note

      Although any exception thrown from a test method will cause the test to fail, there are certain use cases where it can be beneficial to explicitly assert that an exception is not thrown for a given code block within a test method.

      Since:
      5.2
    • assertDoesNotThrow

      @API(status=STABLE, since="5.2") public static void assertDoesNotThrow(Executable executable, String message)
      Assert that execution of the supplied executable does not throw any kind of exception.

      Usage Note

      Although any exception thrown from a test method will cause the test to fail, there are certain use cases where it can be beneficial to explicitly assert that an exception is not thrown for a given code block within a test method.

      Fails with the supplied failure message.

      Since:
      5.2
    • assertDoesNotThrow

      @API(status=STABLE, since="5.2") public static void assertDoesNotThrow(Executable executable, Supplier<String> messageSupplier)
      Assert that execution of the supplied executable does not throw any kind of exception.

      Usage Note

      Although any exception thrown from a test method will cause the test to fail, there are certain use cases where it can be beneficial to explicitly assert that an exception is not thrown for a given code block within a test method.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.2
    • assertDoesNotThrow

      @API(status=STABLE, since="5.2") public static <T> T assertDoesNotThrow(ThrowingSupplier<T> supplier)
      Assert that execution of the supplied supplier does not throw any kind of exception.

      If the assertion passes, the supplier's result will be returned.

      Usage Note

      Although any exception thrown from a test method will cause the test to fail, there are certain use cases where it can be beneficial to explicitly assert that an exception is not thrown for a given code block within a test method.

      Since:
      5.2
    • assertDoesNotThrow

      @API(status=STABLE, since="5.2") public static <T> T assertDoesNotThrow(ThrowingSupplier<T> supplier, String message)
      Assert that execution of the supplied supplier does not throw any kind of exception.

      If the assertion passes, the supplier's result will be returned.

      Fails with the supplied failure message.

      Usage Note

      Although any exception thrown from a test method will cause the test to fail, there are certain use cases where it can be beneficial to explicitly assert that an exception is not thrown for a given code block within a test method.

      Since:
      5.2
    • assertDoesNotThrow

      @API(status=STABLE, since="5.2") public static <T> T assertDoesNotThrow(ThrowingSupplier<T> supplier, Supplier<String> messageSupplier)
      Assert that execution of the supplied supplier does not throw any kind of exception.

      If the assertion passes, the supplier's result will be returned.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Usage Note

      Although any exception thrown from a test method will cause the test to fail, there are certain use cases where it can be beneficial to explicitly assert that an exception is not thrown for a given code block within a test method.

      Since:
      5.2
    • assertTimeout

      public static void assertTimeout(Duration timeout, Executable executable)
      Assert that execution of the supplied executable completes before the given timeout is exceeded.

      Note: the executable will be executed in the same thread as that of the calling code. Consequently, execution of the executable will not be preemptively aborted if the timeout is exceeded.

      See Also:
    • assertTimeout

      public static void assertTimeout(Duration timeout, Executable executable, String message)
      Assert that execution of the supplied executable completes before the given timeout is exceeded.

      Note: the executable will be executed in the same thread as that of the calling code. Consequently, execution of the executable will not be preemptively aborted if the timeout is exceeded.

      Fails with the supplied failure message.

      See Also:
    • assertTimeout

      public static void assertTimeout(Duration timeout, Executable executable, Supplier<String> messageSupplier)
      Assert that execution of the supplied executable completes before the given timeout is exceeded.

      Note: the executable will be executed in the same thread as that of the calling code. Consequently, execution of the executable will not be preemptively aborted if the timeout is exceeded.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertTimeout

      public static <T> T assertTimeout(Duration timeout, ThrowingSupplier<T> supplier)
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      Note: the supplier will be executed in the same thread as that of the calling code. Consequently, execution of the supplier will not be preemptively aborted if the timeout is exceeded.

      See Also:
    • assertTimeout

      public static <T> T assertTimeout(Duration timeout, ThrowingSupplier<T> supplier, String message)
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      Note: the supplier will be executed in the same thread as that of the calling code. Consequently, execution of the supplier will not be preemptively aborted if the timeout is exceeded.

      Fails with the supplied failure message.

      See Also:
    • assertTimeout

      public static <T> T assertTimeout(Duration timeout, ThrowingSupplier<T> supplier, Supplier<String> messageSupplier)
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      Note: the supplier will be executed in the same thread as that of the calling code. Consequently, execution of the supplier will not be preemptively aborted if the timeout is exceeded.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertTimeoutPreemptively

      public static void assertTimeoutPreemptively(Duration timeout, Executable executable)
      Assert that execution of the supplied executable completes before the given timeout is exceeded.

      Note: the executable will be executed in a different thread than that of the calling code. Furthermore, execution of the executable will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      See Also:
    • assertTimeoutPreemptively

      public static void assertTimeoutPreemptively(Duration timeout, Executable executable, String message)
      Assert that execution of the supplied executable completes before the given timeout is exceeded.

      Note: the executable will be executed in a different thread than that of the calling code. Furthermore, execution of the executable will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      Fails with the supplied failure message.

      See Also:
    • assertTimeoutPreemptively

      public static void assertTimeoutPreemptively(Duration timeout, Executable executable, Supplier<String> messageSupplier)
      Assert that execution of the supplied executable completes before the given timeout is exceeded.

      Note: the executable will be executed in a different thread than that of the calling code. Furthermore, execution of the executable will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertTimeoutPreemptively

      public static <T> T assertTimeoutPreemptively(Duration timeout, ThrowingSupplier<T> supplier)
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      Note: the supplier will be executed in a different thread than that of the calling code. Furthermore, execution of the supplier will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      See Also:
    • assertTimeoutPreemptively

      public static <T> T assertTimeoutPreemptively(Duration timeout, ThrowingSupplier<T> supplier, String message)
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      Note: the supplier will be executed in a different thread than that of the calling code. Furthermore, execution of the supplier will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      Fails with the supplied failure message.

      See Also:
    • assertTimeoutPreemptively

      public static <T> T assertTimeoutPreemptively(Duration timeout, ThrowingSupplier<T> supplier, Supplier<String> messageSupplier)
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      Note: the supplier will be executed in a different thread than that of the calling code. Furthermore, execution of the supplier will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      See Also:
    • assertTimeoutPreemptively

      @API(status=INTERNAL, since="5.9.1") public static <T, E extends Throwable> T assertTimeoutPreemptively(Duration timeout, ThrowingSupplier<T> supplier, Supplier<String> messageSupplier, Assertions.TimeoutFailureFactory<E> failureFactory) throws E
      Assert that execution of the supplied supplier completes before the given timeout is exceeded.

      If the assertion passes then the supplier's result is returned.

      In the case the assertion does not pass, the supplied Assertions.TimeoutFailureFactory is invoked to create an exception which is then thrown.

      Note: the supplier will be executed in a different thread than that of the calling code. Furthermore, execution of the supplier will be preemptively aborted if the timeout is exceeded. See the Preemptive Timeouts section of the class-level Javadoc for a discussion of possible undesirable side effects.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Throws:
      E extends Throwable
      See Also:
    • assertInstanceOf

      @API(status=EXPERIMENTAL, since="5.8") public static <T> T assertInstanceOf(Class<T> expectedType, Object actualValue)
      Assert that the supplied actualValue is an instance of the expectedType.

      Like the instanceof operator a null value is not considered to be of the expectedType and does not pass the assertion.

      Since:
      5.8
    • assertInstanceOf

      @API(status=EXPERIMENTAL, since="5.8") public static <T> T assertInstanceOf(Class<T> expectedType, Object actualValue, String message)
      Assert that the supplied actualValue is an instance of the expectedType.

      Like the instanceof operator a null value is not considered to be of the expectedType and does not pass the assertion.

      Fails with the supplied failure message.

      Since:
      5.8
    • assertInstanceOf

      @API(status=EXPERIMENTAL, since="5.8") public static <T> T assertInstanceOf(Class<T> expectedType, Object actualValue, Supplier<String> messageSupplier)
      Assert that the supplied actualValue is an instance of the expectedType.

      Like the instanceof operator a null value is not considered to be of the expectedType and does not pass the assertion.

      If necessary, the failure message will be retrieved lazily from the supplied messageSupplier.

      Since:
      5.8