Class CollectorTester<T,A,R>

java.lang.Object
com.google.common.testing.CollectorTester<T,A,R>

public final class CollectorTester<T,A,R> extends Object
Tester for Collector implementations.

Example usage:

 CollectorTester.of(Collectors.summingInt(Integer::parseInt))
     .expectCollects(3, "1", "2")
     .expectCollects(10, "1", "4", "3", "2")
     .expectCollects(5, "-3", "0", "8");
 
Since:
21.0
  • Field Details

    • collector

      private final Collector<T,A,R> collector
    • equivalence

      private final BiPredicate<? super R,? super R> equivalence
  • Constructor Details

  • Method Details

    • of

      public static <T, A, R> CollectorTester<T,A,R> of(Collector<T,A,R> collector)
      Creates a CollectorTester for the specified Collector. The result of the Collector will be compared to the expected value using Object.equals(java.lang.Object).
    • of

      public static <T, A, R> CollectorTester<T,A,R> of(Collector<T,A,R> collector, BiPredicate<? super R,? super R> equivalence)
      Creates a CollectorTester for the specified Collector. The result of the Collector will be compared to the expected value using the specified equivalence.
    • expectCollects

      @SafeVarargs public final CollectorTester<T,A,R> expectCollects(R expectedResult, T... inputs)
      Verifies that the specified expected result is always produced by collecting the specified inputs, regardless of how the elements are divided.
    • doExpectCollects

      private void doExpectCollects(R expectedResult, List<T> inputs)
    • assertEquivalent

      private void assertEquivalent(R expected, R actual)