Class CharArrayAssert

    • Constructor Detail

      • CharArrayAssert

        protected CharArrayAssert​(char[] actual)
    • Method Detail

      • hasSize

        public CharArrayAssert hasSize​(int expected)
        Verifies that the number of values in the actual group is equal to the given one.
        Specified by:
        hasSize in interface EnumerableAssert<CharArrayAssert,​java.lang.Character>
        Parameters:
        expected - the expected number of values in the actual group.
        Returns:
        this assertion object.
      • hasSameSizeAs

        public CharArrayAssert hasSameSizeAs​(java.lang.Object[] other)
        Verifies that the actual group has the same size as given array.
        Specified by:
        hasSameSizeAs in interface EnumerableAssert<CharArrayAssert,​java.lang.Character>
        Parameters:
        other - the array to compare size with actual group.
        Returns:
        this assertion object.
      • hasSameSizeAs

        public CharArrayAssert hasSameSizeAs​(java.lang.Iterable<?> other)
        Verifies that the actual group has the same size as given Iterable.
        Specified by:
        hasSameSizeAs in interface EnumerableAssert<CharArrayAssert,​java.lang.Character>
        Parameters:
        other - the Iterable to compare size with actual group.
        Returns:
        this assertion object.
      • contains

        public CharArrayAssert contains​(char... values)
        Verifies that the actual array contains the given values, in any order.
        Parameters:
        values - the given values.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given argument is null.
        java.lang.IllegalArgumentException - if the given argument is an empty array.
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the actual array does not contain the given values.
      • containsOnly

        public CharArrayAssert containsOnly​(char... values)
        Verifies that the actual array contains only the given values and nothing else, in any order.
        Parameters:
        values - the given values.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given argument is null.
        java.lang.IllegalArgumentException - if the given argument is an empty array.
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the actual array does not contain the given values, i.e. the actual array contains some or none of the given values, or the actual array contains more values than the given ones.
      • containsSequence

        public CharArrayAssert containsSequence​(char... sequence)
        Verifies that the actual array contains the given sequence, without any other values between them.
        Parameters:
        sequence - the sequence of values to look for.
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the given array is null.
        java.lang.AssertionError - if the actual array does not contain the given sequence.
      • contains

        public CharArrayAssert contains​(char value,
                                        Index index)
        Verifies that the actual array contains the given value at the given index.
        Parameters:
        value - the value to look for.
        index - the index where the value should be stored in the actual array.
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual array is null or empty.
        java.lang.NullPointerException - if the given Index is null.
        java.lang.IndexOutOfBoundsException - if the value of the given Index is equal to or greater than the size of the actual array.
        java.lang.AssertionError - if the actual array does not contain the given value at the given index.
      • doesNotContain

        public CharArrayAssert doesNotContain​(char... values)
        Verifies that the actual array does not contain the given values.
        Parameters:
        values - the given values.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given argument is null.
        java.lang.IllegalArgumentException - if the given argument is an empty array.
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the actual array contains any of the given values.
      • doesNotContain

        public CharArrayAssert doesNotContain​(char value,
                                              Index index)
        Verifies that the actual array does not contain the given value at the given index.
        Parameters:
        value - the value to look for.
        index - the index where the value should be stored in the actual array.
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual array is null.
        java.lang.NullPointerException - if the given Index is null.
        java.lang.AssertionError - if the actual array contains the given value at the given index.
      • doesNotHaveDuplicates

        public CharArrayAssert doesNotHaveDuplicates()
        Verifies that the actual array does not contain duplicates.
        Returns:
        this assertion object.
        Throws:
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the actual array contains duplicates.
      • startsWith

        public CharArrayAssert startsWith​(char... sequence)
        Verifies that the actual array starts with the given sequence of values, without any other values between them. Similar to containsSequence(char...), but it also verifies that the first element in the sequence is also first element of the actual array.
        Parameters:
        sequence - the sequence of values to look for.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given argument is null.
        java.lang.IllegalArgumentException - if the given argument is an empty array.
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the actual array does not start with the given sequence.
      • endsWith

        public CharArrayAssert endsWith​(char... sequence)
        Verifies that the actual array ends with the given sequence of values, without any other values between them. Similar to containsSequence(char...), but it also verifies that the last element in the sequence is also last element of the actual array.
        Parameters:
        sequence - the sequence of values to look for.
        Returns:
        this assertion object.
        Throws:
        java.lang.NullPointerException - if the given argument is null.
        java.lang.IllegalArgumentException - if the given argument is an empty array.
        java.lang.AssertionError - if the actual array is null.
        java.lang.AssertionError - if the actual array does not end with the given sequence.
      • isSorted

        public CharArrayAssert isSorted()
        Verifies that the actual array is sorted into ascending order according to the natural ordering of its elements.

        All array elements must be primitive or implement the Comparable interface and must be mutually comparable (that is, e1.compareTo(e2) must not throw a ClassCastException for any elements e1 and e2 in the array), examples :

        • a array composed of {2, 4, 6} is ok because the element type is a primitive type.
        • a array composed of {"a1", "a2", "a3"} is ok because the element type (String) is Comparable
        • a array composed of Rectangle {r1, r2, r3} is NOT ok because Rectangle is not Comparable
        • a array composed of {True, "abc", False} is NOT ok because elements are not mutually comparable (even though each element type implements Comparable)
        Empty or one element arrays are considered sorted (unless the array element type is not Comparable).

        Specified by:
        isSorted in interface ArraySortedAssert<CharArrayAssert,​java.lang.Character>
        Returns:
        this assertion object.
      • isSortedAccordingTo

        public CharArrayAssert isSortedAccordingTo​(java.util.Comparator<? super java.lang.Character> comparator)
        Verifies that the actual array is sorted according to the given comparator.
        Empty arrays are considered sorted whatever the comparator is.
        One element arrays are considered sorted if element is compatible with comparator, otherwise an AssertionError is thrown.
        Specified by:
        isSortedAccordingTo in interface ArraySortedAssert<CharArrayAssert,​java.lang.Character>
        Parameters:
        comparator - the Comparator used to compare array elements
        Returns:
        this assertion object.
      • usingElementComparator

        public CharArrayAssert usingElementComparator​(java.util.Comparator<? super java.lang.Character> customComparator)
        Use given custom comparator instead of relying on actual type A equals method to compare group elements for incoming assertion checks.

        Custom comparator is bound to assertion instance, meaning that if a new assertion is created, it will use default comparison strategy.

        Examples :

         // compares invoices by payee 
         assertThat(invoiceList).usingComparator(invoicePayeeComparator).isEqualTo(expectedInvoiceList).
         
         // compares invoices by date, doesNotHaveDuplicates and contains both use the given invoice date comparator
         assertThat(invoiceList).usingComparator(invoiceDateComparator).doesNotHaveDuplicates().contains(may2010Invoice)
         
         // as assertThat(invoiceList) creates a new assertion, it falls back to standard comparison strategy 
         // based on Invoice's equal method to compare invoiceList elements to lowestInvoice.                                                      
         assertThat(invoiceList).contains(lowestInvoice).
         
         // standard comparison : the fellowshipOfTheRing includes Gandalf but not Sauron (believe me) ...
         assertThat(fellowshipOfTheRing).contains(gandalf)
                                        .doesNotContain(sauron);
         
         // ... but if we compare only races, Sauron is in fellowshipOfTheRing because he's a Maia like Gandalf.
         assertThat(fellowshipOfTheRing).usingElementComparator(raceComparator)
                                        .contains(sauron);
         
        Specified by:
        usingElementComparator in interface EnumerableAssert<CharArrayAssert,​java.lang.Character>
        Parameters:
        customComparator - the comparator to use for incoming assertion checks.
        Returns:
        this assertion object.