Class TestStringSetGenerator
- java.lang.Object
-
- com.google.common.collect.testing.TestStringSetGenerator
-
- All Implemented Interfaces:
TestCollectionGenerator<String>
,TestContainerGenerator<Collection<String>,String>
,TestSetGenerator<String>
- Direct Known Subclasses:
SetGenerators.DegeneratedImmutableSetGenerator
,SetGenerators.ImmutableSetCopyOfGenerator
,SetGenerators.ImmutableSetSizedBuilderGenerator
,SetGenerators.ImmutableSetTooBigBuilderGenerator
,SetGenerators.ImmutableSetTooSmallBuilderGenerator
,SetGenerators.ImmutableSetUnsizedBuilderGenerator
,SetGenerators.ImmutableSortedSetExplicitComparator
,SetGenerators.ImmutableSortedSetExplicitSuperclassComparatorGenerator
,SetGenerators.ImmutableSortedSetReversedOrderGenerator
,TestStringSortedSetGenerator
@GwtCompatible public abstract class TestStringSetGenerator extends Object implements TestSetGenerator<String>
Create string sets for collection tests.- Author:
- Kevin Bourrillion
-
-
Constructor Summary
Constructors Constructor Description TestStringSetGenerator()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Set<String>
create(Object... elements)
Creates a new container containing the given elements.protected abstract Set<String>
create(String[] elements)
String[]
createArray(int length)
Helper method to create an array of the appropriate type used by this generator.List<String>
order(List<String> insertionOrder)
Returns the iteration ordering of elements, given the order in which they were added to the container.SampleElements<String>
samples()
Returns the sample elements that this generate populates its container with.
-
-
-
Constructor Detail
-
TestStringSetGenerator
public TestStringSetGenerator()
-
-
Method Detail
-
samples
public SampleElements<String> samples()
Description copied from interface:TestContainerGenerator
Returns the sample elements that this generate populates its container with.- Specified by:
samples
in interfaceTestContainerGenerator<Collection<String>,String>
-
create
public Set<String> 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 interfaceTestContainerGenerator<Collection<String>,String>
- Specified by:
create
in interfaceTestSetGenerator<String>
-
createArray
public String[] 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 interfaceTestContainerGenerator<Collection<String>,String>
-
order
public List<String> order(List<String> 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 withoutCollectionFeature.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 interfaceTestContainerGenerator<Collection<String>,String>
-
-