Class Helpers


  • @GwtCompatible(emulated=true)
    @NullMarked
    public class Helpers
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      Helpers()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static <E extends @Nullable java.lang.Object>
      boolean
      addAll​(java.util.Collection<E> addTo, java.lang.Iterable<? extends E> elementsToAdd)  
      static void assertContains​(java.lang.Iterable<?> actual, java.lang.Object expected)  
      static void assertContainsAllOf​(java.lang.Iterable<?> actual, java.lang.Object... expected)  
      static void assertContentsAnyOrder​(java.lang.Iterable<?> actual, java.lang.Object... expected)  
      static void assertContentsInOrder​(java.lang.Iterable<?> actual, java.lang.Object... expected)  
      static void assertEmpty​(java.lang.Iterable<?> iterable)  
      static void assertEmpty​(java.util.Map<?,​?> map)  
      static void assertEqualIgnoringOrder​(java.lang.Iterable<?> expected, java.lang.Iterable<?> actual)  
      static void assertEqualInOrder​(java.lang.Iterable<?> expected, java.lang.Iterable<?> actual)  
      static <E extends @Nullable java.lang.Object>
      java.util.List<E>
      copyToList​(E[] elements)  
      static <E extends @Nullable java.lang.Object>
      java.util.List<E>
      copyToList​(java.lang.Iterable<? extends E> elements)  
      static <E extends @Nullable java.lang.Object>
      java.util.Set<E>
      copyToSet​(E[] elements)  
      static <E extends @Nullable java.lang.Object>
      java.util.Set<E>
      copyToSet​(java.lang.Iterable<? extends E> elements)  
      static <K extends @Nullable java.lang.Object,​V extends @Nullable java.lang.Object>
      java.util.Comparator<java.util.Map.Entry<K,​V>>
      entryComparator​(@Nullable java.util.Comparator<? super K> keyComparator)  
      static java.lang.reflect.Method getMethod​(java.lang.Class<?> clazz, java.lang.String name)  
      static <K extends @Nullable java.lang.Object,​V extends @Nullable java.lang.Object>
      java.util.Map.Entry<K,​V>
      mapEntry​(K key, V value)  
      static <T extends @Nullable java.lang.Object>
      java.util.Collection<T>
      misleadingSizeCollection​(int delta)
      Returns a collection that simulates concurrent modification by having its size method return incorrect values.
      static <K extends @Nullable java.lang.Object,​V extends @Nullable java.lang.Object>
      java.util.Map.Entry<K,​V>
      nefariousMapEntry​(K key, V value)
      Returns a "nefarious" map entry with the specified key and value, meaning an entry that is suitable for testing that map entries cannot be modified via a nefarious implementation of equals.
      static <K extends java.lang.Comparable,​V extends @Nullable java.lang.Object>
      java.lang.Iterable<java.util.Map.Entry<K,​V>>
      orderEntriesByKey​(java.util.List<java.util.Map.Entry<K,​V>> insertionOrder)  
      static <T extends @Nullable java.lang.Object>
      void
      testComparator​(java.util.Comparator<? super T> comparator, java.util.List<T> valuesInExpectedOrder)
      Asserts that all pairs of T values within valuesInExpectedOrder are ordered consistently between their order within valuesInExpectedOrder and the order implied by the given comparator.
      static <T extends @Nullable java.lang.Object>
      void
      testComparator​(java.util.Comparator<? super T> comparator, T... valuesInExpectedOrder)
      Asserts that all pairs of T values within valuesInExpectedOrder are ordered consistently between their order within valuesInExpectedOrder and the order implied by the given comparator.
      static <T extends java.lang.Comparable<? super T>>
      void
      testCompareToAndEquals​(java.util.List<T> valuesInExpectedOrder)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • copyToList

        public static <E extends @Nullable java.lang.Object> java.util.List<E> copyToList​(java.lang.Iterable<? extends E> elements)
      • copyToList

        public static <E extends @Nullable java.lang.Object> java.util.List<E> copyToList​(E[] elements)
      • copyToSet

        public static <E extends @Nullable java.lang.Object> java.util.Set<E> copyToSet​(java.lang.Iterable<? extends E> elements)
      • copyToSet

        public static <E extends @Nullable java.lang.Object> java.util.Set<E> copyToSet​(E[] elements)
      • mapEntry

        public static <K extends @Nullable java.lang.Object,​V extends @Nullable java.lang.Object> java.util.Map.Entry<K,​V> mapEntry​(K key,
                                                                                                                                                V value)
      • assertEmpty

        public static void assertEmpty​(java.lang.Iterable<?> iterable)
      • assertEmpty

        public static void assertEmpty​(java.util.Map<?,​?> map)
      • assertEqualInOrder

        public static void assertEqualInOrder​(java.lang.Iterable<?> expected,
                                              java.lang.Iterable<?> actual)
      • assertContentsInOrder

        public static void assertContentsInOrder​(java.lang.Iterable<?> actual,
                                                 java.lang.Object... expected)
      • assertEqualIgnoringOrder

        public static void assertEqualIgnoringOrder​(java.lang.Iterable<?> expected,
                                                    java.lang.Iterable<?> actual)
      • assertContentsAnyOrder

        public static void assertContentsAnyOrder​(java.lang.Iterable<?> actual,
                                                  java.lang.Object... expected)
      • assertContains

        public static void assertContains​(java.lang.Iterable<?> actual,
                                          java.lang.Object expected)
      • assertContainsAllOf

        public static void assertContainsAllOf​(java.lang.Iterable<?> actual,
                                               java.lang.Object... expected)
      • addAll

        @CanIgnoreReturnValue
        public static <E extends @Nullable java.lang.Object> boolean addAll​(java.util.Collection<E> addTo,
                                                                            java.lang.Iterable<? extends E> elementsToAdd)
      • entryComparator

        public static <K extends @Nullable java.lang.Object,​V extends @Nullable java.lang.Object> java.util.Comparator<java.util.Map.Entry<K,​V>> entryComparator​(@Nullable java.util.Comparator<? super K> keyComparator)
      • testComparator

        public static <T extends @Nullable java.lang.Object> void testComparator​(java.util.Comparator<? super T> comparator,
                                                                                 T... valuesInExpectedOrder)
        Asserts that all pairs of T values within valuesInExpectedOrder are ordered consistently between their order within valuesInExpectedOrder and the order implied by the given comparator.
        See Also:
        testComparator(Comparator, List)
      • testComparator

        public static <T extends @Nullable java.lang.Object> void testComparator​(java.util.Comparator<? super T> comparator,
                                                                                 java.util.List<T> valuesInExpectedOrder)
        Asserts that all pairs of T values within valuesInExpectedOrder are ordered consistently between their order within valuesInExpectedOrder and the order implied by the given comparator.

        In detail, this method asserts

        • reflexivity: comparator.compare(t, t) = 0 for all t in valuesInExpectedOrder; and
        • consistency: comparator.compare(ti, tj) < 0 and comparator.compare(tj, ti) > 0 for i < j, where ti = valuesInExpectedOrder.get(i) and tj = valuesInExpectedOrder.get(j).
      • testCompareToAndEquals

        public static <T extends java.lang.Comparable<? super T>> void testCompareToAndEquals​(java.util.List<T> valuesInExpectedOrder)
      • misleadingSizeCollection

        public static <T extends @Nullable java.lang.Object> java.util.Collection<T> misleadingSizeCollection​(int delta)
        Returns a collection that simulates concurrent modification by having its size method return incorrect values. This is useful for testing methods that must treat the return value from size() as a hint only.
        Parameters:
        delta - the difference between the true size of the collection and the values returned by the size method
      • nefariousMapEntry

        public static <K extends @Nullable java.lang.Object,​V extends @Nullable java.lang.Object> java.util.Map.Entry<K,​V> nefariousMapEntry​(K key,
                                                                                                                                                         V value)
        Returns a "nefarious" map entry with the specified key and value, meaning an entry that is suitable for testing that map entries cannot be modified via a nefarious implementation of equals. This is used for testing unmodifiable collections of map entries; for example, it should not be possible to access the raw (modifiable) map entry via a nefarious equals method.
      • orderEntriesByKey

        public static <K extends java.lang.Comparable,​V extends @Nullable java.lang.Object> java.lang.Iterable<java.util.Map.Entry<K,​V>> orderEntriesByKey​(java.util.List<java.util.Map.Entry<K,​V>> insertionOrder)
      • getMethod

        @GwtIncompatible
        public static java.lang.reflect.Method getMethod​(java.lang.Class<?> clazz,
                                                         java.lang.String name)