Interface TestContainerGenerator<T, E extends @Nullable Object>

All Known Subinterfaces:
OneSizeTestContainerGenerator<T,E>, TestBiMapGenerator<K,V>, TestCollectionGenerator<E>, TestListGenerator<E>, TestListMultimapGenerator<K,V>, TestMapGenerator<K,V>, TestMultimapGenerator<K,V,M>, TestMultisetGenerator<E>, TestQueueGenerator<E>, TestSetGenerator<E>, TestSetMultimapGenerator<K,V>, TestSortedMapGenerator<K,V>, TestSortedSetGenerator<E>
All Known Implementing Classes:
BiMapGenerators.ImmutableBiMapCopyOfEntriesGenerator, BiMapGenerators.ImmutableBiMapCopyOfGenerator, BiMapGenerators.ImmutableBiMapGenerator, DerivedCollectionGenerators.MapEntrySetGenerator, DerivedCollectionGenerators.MapKeySetGenerator, DerivedCollectionGenerators.MapSortedKeySetGenerator, DerivedCollectionGenerators.MapValueCollectionGenerator, DerivedCollectionGenerators.SortedMapSubmapTestMapGenerator, DerivedCollectionGenerators.SortedSetSubsetTestSetGenerator, DerivedGoogleCollectionGenerators.BiMapValueSetGenerator, DerivedGoogleCollectionGenerators.InverseBiMapGenerator, DerivedGoogleCollectionGenerators.MapGenerator, ListGenerators.BuilderAddAllListGenerator, ListGenerators.BuilderAddListGenerator, ListGenerators.BuilderReversedListGenerator, ListGenerators.CharactersOfCharSequenceGenerator, ListGenerators.CharactersOfStringGenerator, ListGenerators.ImmutableListHeadSubListGenerator, ListGenerators.ImmutableListMiddleSubListGenerator, ListGenerators.ImmutableListOfGenerator, ListGenerators.ImmutableListTailSubListGenerator, ListGenerators.UnhashableElementsImmutableListGenerator, MapGenerators.ImmutableEnumMapGenerator, MapGenerators.ImmutableMapCopyOfEntriesGenerator, MapGenerators.ImmutableMapCopyOfEnumMapGenerator, MapGenerators.ImmutableMapCopyOfGenerator, MapGenerators.ImmutableMapEntryListGenerator, MapGenerators.ImmutableMapGenerator, MapGenerators.ImmutableMapKeyListGenerator, MapGenerators.ImmutableMapUnhashableValuesGenerator, MapGenerators.ImmutableMapValueListGenerator, MapGenerators.ImmutableMapValuesAsSingletonSetGenerator, NavigableMapTestSuiteBuilder.NavigableMapSubmapTestMapGenerator, NavigableSetTestSuiteBuilder.NavigableSetSubsetTestSetGenerator, OneSizeGenerator, ReserializingTestCollectionGenerator, ReserializingTestSetGenerator, SetGenerators.ContiguousSetDescendingGenerator, SetGenerators.ContiguousSetGenerator, SetGenerators.ContiguousSetHeadsetGenerator, SetGenerators.ContiguousSetSubsetGenerator, SetGenerators.ContiguousSetTailsetGenerator, SetGenerators.DegeneratedImmutableSetGenerator, SetGenerators.ImmutableSetAsListGenerator, SetGenerators.ImmutableSetCopyOfGenerator, SetGenerators.ImmutableSetSizedBuilderGenerator, SetGenerators.ImmutableSetTooBigBuilderGenerator, SetGenerators.ImmutableSetTooSmallBuilderGenerator, SetGenerators.ImmutableSetUnsizedBuilderGenerator, SetGenerators.ImmutableSetWithBadHashesGenerator, SetGenerators.ImmutableSortedSetAsListGenerator, SetGenerators.ImmutableSortedSetAsListSubListGenerator, SetGenerators.ImmutableSortedSetCopyOfGenerator, SetGenerators.ImmutableSortedSetDescendingAsListGenerator, SetGenerators.ImmutableSortedSetDescendingGenerator, SetGenerators.ImmutableSortedSetExplicitComparator, SetGenerators.ImmutableSortedSetExplicitSuperclassComparatorGenerator, SetGenerators.ImmutableSortedSetHeadsetGenerator, SetGenerators.ImmutableSortedSetReversedOrderGenerator, SetGenerators.ImmutableSortedSetSubsetAsListGenerator, SetGenerators.ImmutableSortedSetSubsetAsListSubListGenerator, SetGenerators.ImmutableSortedSetSubsetGenerator, SetGenerators.ImmutableSortedSetTailsetGenerator, SetGenerators.ImmutableSortedSetUnhashableGenerator, SetGenerators.TestUnhashableSetGenerator, SortedMapGenerators.ImmutableSortedMapCopyOfEntriesGenerator, SortedMapGenerators.ImmutableSortedMapEntryListGenerator, SortedMapGenerators.ImmutableSortedMapGenerator, SortedMapGenerators.ImmutableSortedMapKeyListGenerator, SortedMapGenerators.ImmutableSortedMapValueListGenerator, TestCharacterListGenerator, TestCollidingSetGenerator, TestEnumMapGenerator, TestEnumMultisetGenerator, TestEnumSetGenerator, TestIntegerSetGenerator, TestIntegerSortedSetGenerator, TestMapEntrySetGenerator, TestStringBiMapGenerator, TestStringCollectionGenerator, TestStringListGenerator, TestStringListMultimapGenerator, TestStringMapGenerator, TestStringMultisetGenerator, TestStringQueueGenerator, TestStringSetGenerator, TestStringSetMultimapGenerator, TestStringSortedMapGenerator, TestStringSortedSetGenerator, TestUnhashableCollectionGenerator

@GwtCompatible @NullMarked public interface TestContainerGenerator<T, E extends @Nullable Object>
To be implemented by test generators of things that can contain elements. Such things include both Collection and Map; since there isn't an established collective noun that encompasses both of these, 'container' is used.
Author:
George van den Driessche
  • Method Summary

    Modifier and Type
    Method
    Description
    create(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.
    order(List<E> insertionOrder)
    Returns the iteration ordering of elements, given the order in which they were added to the container.
    Returns the sample elements that this generate populates its container with.
  • Method Details

    • samples

      SampleElements<E> samples()
      Returns the sample elements that this generate populates its container with.
    • create

      T create(Object... elements)
      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.
    • createArray

      E[] createArray(int length)
      Helper method to create an array of the appropriate type used by this generator. The returned array will contain only nulls.
    • order

      Iterable<E> order(List<E> 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.