Class TestIntegerSetGenerator

java.lang.Object
com.google.common.collect.testing.TestIntegerSetGenerator
All Implemented Interfaces:
TestCollectionGenerator<Integer>, TestContainerGenerator<Collection<Integer>,Integer>, TestSetGenerator<Integer>
Direct Known Subclasses:
TestIntegerSortedSetGenerator

@GwtCompatible @NullMarked public abstract class TestIntegerSetGenerator extends Object implements TestSetGenerator<Integer>
Create integer sets for collection tests.
Author:
Gregory Kick
  • Constructor Details

    • TestIntegerSetGenerator

      public TestIntegerSetGenerator()
  • Method Details

    • samples

      public SampleElements<Integer> samples()
      Description copied from interface: TestContainerGenerator
      Returns the sample elements that this generate populates its container with.
      Specified by:
      samples in interface TestContainerGenerator<Collection<Integer>,Integer>
    • create

      public Set<Integer> create(Object... elements)
      Description copied from interface: TestContainerGenerator
      Creates a new container containing the given elements. TODO: would be nice to figure out how to use E... or E[] as a parameter type, but this doesn't seem to work because Java creates an array of the erased type.
      Specified by:
      create in interface TestContainerGenerator<Collection<Integer>,Integer>
      Specified by:
      create in interface TestSetGenerator<Integer>
    • create

      protected abstract Set<Integer> create(Integer[] elements)
    • createArray

      public Integer[] createArray(int length)
      Description copied from interface: TestContainerGenerator
      Helper method to create an array of the appropriate type used by this generator. The returned array will contain only nulls.
      Specified by:
      createArray in interface TestContainerGenerator<Collection<Integer>,Integer>
    • order

      public List<Integer> order(List<Integer> insertionOrder)
      Returns the iteration ordering of elements, given the order in which they were added to the container. This method may return the original list unchanged, the original list modified in place, or a different list.

      If the order is non-deterministic, as with HashSet, this method can return its input unmodified. Provided that the test suite is built without CollectionFeature.KNOWN_ORDER, the tests will look only at the returned contents without regard for order.

      By default, returns the supplied elements in their given order; however, generators for containers with a known order other than insertion order must override this method.

      Note: This default implementation is overkill (but valid) for an unordered container. An equally valid implementation for an unordered container is to throw an exception. The chosen implementation, however, has the advantage of working for insertion-ordered containers, as well.

      Specified by:
      order in interface TestContainerGenerator<Collection<Integer>,Integer>