Class OneSizeGenerator<T,E>
- java.lang.Object
-
- com.google.common.collect.testing.OneSizeGenerator<T,E>
-
- All Implemented Interfaces:
OneSizeTestContainerGenerator<T,E>,TestContainerGenerator<T,E>,TestSubjectGenerator<T>
@GwtCompatible public final class OneSizeGenerator<T,E> extends Object implements OneSizeTestContainerGenerator<T,E>
Generator for collection of a particular size.- Author:
- George van den Driessche
-
-
Constructor Summary
Constructors Constructor Description OneSizeGenerator(TestContainerGenerator<T,E> generator, CollectionSize collectionSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Tcreate(Object... elements)Creates a new container containing the given elements.E[]createArray(int length)Helper method to create an array of the appropriate type used by this generator.TcreateTestSubject()CollectionSizegetCollectionSize()TestContainerGenerator<T,E>getInnerGenerator()Collection<E>getSampleElements(int howMany)Iterable<E>order(List<E> insertionOrder)Returns the iteration ordering of elements, given the order in which they were added to the container.SampleElements<E>samples()Returns the sample elements that this generate populates its container with.
-
-
-
Constructor Detail
-
OneSizeGenerator
public OneSizeGenerator(TestContainerGenerator<T,E> generator, CollectionSize collectionSize)
-
-
Method Detail
-
getInnerGenerator
public TestContainerGenerator<T,E> getInnerGenerator()
- Specified by:
getInnerGeneratorin interfaceOneSizeTestContainerGenerator<T,E>
-
samples
public SampleElements<E> samples()
Description copied from interface:TestContainerGeneratorReturns the sample elements that this generate populates its container with.- Specified by:
samplesin interfaceTestContainerGenerator<T,E>
-
create
public T create(Object... elements)
Description copied from interface:TestContainerGeneratorCreates 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:
createin interfaceTestContainerGenerator<T,E>
-
createArray
public E[] createArray(int length)
Description copied from interface:TestContainerGeneratorHelper method to create an array of the appropriate type used by this generator. The returned array will contain only nulls.- Specified by:
createArrayin interfaceTestContainerGenerator<T,E>
-
createTestSubject
public T createTestSubject()
- Specified by:
createTestSubjectin interfaceTestSubjectGenerator<T>
-
getSampleElements
public Collection<E> getSampleElements(int howMany)
- Specified by:
getSampleElementsin interfaceOneSizeTestContainerGenerator<T,E>
-
getCollectionSize
public CollectionSize getCollectionSize()
- Specified by:
getCollectionSizein interfaceOneSizeTestContainerGenerator<T,E>
-
order
public Iterable<E> order(List<E> insertionOrder)
Description copied from interface:TestContainerGeneratorReturns 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 withoutCollectionFeature.KNOWN_ORDER, the tests will look only at the returned contents without regard for order.- Specified by:
orderin interfaceTestContainerGenerator<T,E>
-
-