Package net.jqwik.api.arbitraries
Interface ListArbitrary<T extends @Nullable Object>
- All Superinterfaces:
Arbitrary<List<T>>
,SizableArbitrary<List<T>>
,StreamableArbitrary<T,
List<T>>
@API(status=MAINTAINED,
since="1.3.2")
public interface ListArbitrary<T extends @Nullable Object>
extends Arbitrary<List<T>>, StreamableArbitrary<T,List<T>>
Fluent interface to add functionality to arbitraries that generate instances
of type List
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.jqwik.api.Arbitrary
Arbitrary.ArbitraryFacade
-
Method Summary
Modifier and TypeMethodDescriptionflatMapEach
(BiFunction<? super List<? extends T>, ? super T, ? extends Arbitrary<U>> flatMapper) Flat-map over each element of the generated list giving access to all elements of the list.mapEach
(BiFunction<? super List<? extends T>, ? super T, ? extends U> mapper) Map over each element of the generated list giving access to all elements of the list.ofMaxSize
(int maxSize) Set upper size boundarymaxSize
(included).ofMinSize
(int minSize) Set lower size boundaryminSize
(included).default ListArbitrary<T>
ofSize
(int size) Fix the size tosize
.Add the constraint that elements of the generated list must be unique, i.e. no two elements must return true when being compared using Object.equals(Object).uniqueElements
(Function<? super T, ?> by) Add the constraint that elements of the generated list must be unique relating to an element's "feature" being extracted using theby
function.withSizeDistribution
(RandomDistribution uniform) Set random distributiondistribution
of size of generated list.Methods inherited from interface net.jqwik.api.Arbitrary
allValues, array, asGeneric, collect, dontShrink, edgeCases, edgeCases, edgeCases, exhaustive, exhaustive, filter, filter, fixGenSize, flatMap, forEachValue, generator, generator, generatorWithEmbeddedEdgeCases, ignoreException, ignoreException, ignoreExceptions, ignoreExceptions, injectDuplicates, injectNull, isGeneratorMemoizable, iterator, list, map, optional, optional, sample, sampleStream, set, stream, tuple1, tuple2, tuple3, tuple4, tuple5, withoutEdgeCases
Methods inherited from interface net.jqwik.api.arbitraries.StreamableArbitrary
reduce
-
Method Details
-
ofSize
Fix the size tosize
. -
ofMinSize
Set lower size boundaryminSize
(included). -
ofMaxSize
Set upper size boundarymaxSize
(included). -
withSizeDistribution
@API(status=EXPERIMENTAL, since="1.5.3") ListArbitrary<T> withSizeDistribution(RandomDistribution uniform) Set random distributiondistribution
of size of generated list. The distribution's center is the minimum size of the generated list.- Specified by:
withSizeDistribution
in interfaceSizableArbitrary<T extends @Nullable Object>
- Specified by:
withSizeDistribution
in interfaceStreamableArbitrary<T extends @Nullable Object,
List<T extends @Nullable Object>>
-
mapEach
@API(status=MAINTAINED, since="1.4.0") <U extends @Nullable Object> Arbitrary<List<U>> mapEach(BiFunction<? super List<? extends T>, ? super T, ? extends U> mapper) Map over each element of the generated list giving access to all elements of the list. The number and position of the mapped elements within the list will stay the same.- Type Parameters:
U
- The target type of a list to generate- Parameters:
mapper
- Mapper function to element type U- Returns:
- arbitrary of a list of Us
-
flatMapEach
@API(status=MAINTAINED, since="1.4.0") <U> Arbitrary<List<U>> flatMapEach(BiFunction<? super List<? extends T>, ? super T, ? extends Arbitrary<U>> flatMapper) Flat-map over each element of the generated list giving access to all elements of the list. The number and position of the mapped elements within the list will stay the same.- Type Parameters:
U
- The target type of a list to generate- Parameters:
flatMapper
- Mapper function to arbitrary of element type U- Returns:
- arbitrary of a list of Us
-
uniqueElements
Add the constraint that elements of the generated list must be unique, i.e. no two elements must return true when being compared using Object.equals(Object).The constraint can be combined with other uniqueElements(Function) constraints.
- Specified by:
uniqueElements
in interfaceStreamableArbitrary<T extends @Nullable Object,
List<T extends @Nullable Object>> - Returns:
- new arbitrary instance
-
uniqueElements
Add the constraint that elements of the generated list must be unique relating to an element's "feature" being extracted using theby
function. The extracted features are being compared using Object.equals(Object).The constraint can be combined with other uniqueElements(Function) constraints.
- Specified by:
uniqueElements
in interfaceStreamableArbitrary<T extends @Nullable Object,
List<T extends @Nullable Object>> - Returns:
- new arbitrary instance
-