Package net.jqwik.api.arbitraries
Interface SetArbitrary<T>
-
- All Superinterfaces:
Arbitrary<java.util.Set<T>>
,SizableArbitrary<java.util.Set<T>>
,StreamableArbitrary<T,java.util.Set<T>>
@API(status=MAINTAINED, since="1.3.2") public interface SetArbitrary<T> extends Arbitrary<java.util.Set<T>>, StreamableArbitrary<T,java.util.Set<T>>
Fluent interface to add functionality to arbitraries that generate instances of type Set
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.jqwik.api.Arbitrary
Arbitrary.ArbitraryFacade
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description <U> Arbitrary<java.util.Set<U>>
flatMapEach(java.util.function.BiFunction<java.util.Set<T>,T,Arbitrary<U>> flatMapper)
Flat-map over each element of the generated set giving access to all elements of the set.<U> Arbitrary<java.util.Set<U>>
mapEach(java.util.function.BiFunction<java.util.Set<T>,T,U> mapper)
Map over each element of the generated set giving access to all elements of the set.SetArbitrary<T>
ofMaxSize(int maxSize)
Set upper size boundarymaxSize
(included).SetArbitrary<T>
ofMinSize(int minSize)
Set lower size boundaryminSize
(included).default SetArbitrary<T>
ofSize(int size)
Fix the size tosize
.SetArbitrary<T>
uniqueElements()
Do not use.SetArbitrary<T>
uniqueElements(java.util.function.Function<T,java.lang.Object> by)
Add the constraint that elements of the generated set must be unique relating to an element's "feature" being extracted using theby
function.SetArbitrary<T>
withSizeDistribution(RandomDistribution uniform)
Set random distributiondistribution
of size of generated set.-
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 Detail
-
ofSize
default SetArbitrary<T> ofSize(int size)
Fix the size tosize
.- Specified by:
ofSize
in interfaceSizableArbitrary<T>
- Specified by:
ofSize
in interfaceStreamableArbitrary<T,java.util.Set<T>>
- Parameters:
size
- The size of the generated set- Returns:
- new arbitrary instance
-
ofMinSize
SetArbitrary<T> ofMinSize(int minSize)
Set lower size boundaryminSize
(included).- Specified by:
ofMinSize
in interfaceSizableArbitrary<T>
- Specified by:
ofMinSize
in interfaceStreamableArbitrary<T,java.util.Set<T>>
- Parameters:
minSize
- The minimum size of the generated set- Returns:
- new arbitrary instance
-
ofMaxSize
SetArbitrary<T> ofMaxSize(int maxSize)
Set upper size boundarymaxSize
(included).- Specified by:
ofMaxSize
in interfaceSizableArbitrary<T>
- Specified by:
ofMaxSize
in interfaceStreamableArbitrary<T,java.util.Set<T>>
- Parameters:
maxSize
- The maximum size of the generated set- Returns:
- new arbitrary instance
-
withSizeDistribution
@API(status=EXPERIMENTAL, since="1.5.3") SetArbitrary<T> withSizeDistribution(RandomDistribution uniform)
Set random distributiondistribution
of size of generated set. The distribution's center is the minimum size of the generated set.- Specified by:
withSizeDistribution
in interfaceSizableArbitrary<T>
- Specified by:
withSizeDistribution
in interfaceStreamableArbitrary<T,java.util.Set<T>>
-
mapEach
@API(status=MAINTAINED, since="1.4.0") <U> Arbitrary<java.util.Set<U>> mapEach(java.util.function.BiFunction<java.util.Set<T>,T,U> mapper)
Map over each element of the generated set giving access to all elements of the set. The number of the mapped elements within the set will stay the same.- Type Parameters:
U
- The target type of a set to generate- Parameters:
mapper
- Mapper function to element type U- Returns:
- arbitrary of a set of Us
-
flatMapEach
@API(status=MAINTAINED, since="1.4.0") <U> Arbitrary<java.util.Set<U>> flatMapEach(java.util.function.BiFunction<java.util.Set<T>,T,Arbitrary<U>> flatMapper)
Flat-map over each element of the generated set giving access to all elements of the set. The number of the mapped elements within the set will stay the same.- Type Parameters:
U
- The target type of a set to generate- Parameters:
flatMapper
- Mapper function to arbitrary of element type U- Returns:
- arbitrary of a set of Us
-
uniqueElements
@API(status=MAINTAINED, since="1.7.3") SetArbitrary<T> uniqueElements()
Do not use. Sets have unique elements anyway. It only exists for purposes of symmetry.- Specified by:
uniqueElements
in interfaceStreamableArbitrary<T,java.util.Set<T>>
- Returns:
- same instance of arbitrary
-
uniqueElements
@API(status=MAINTAINED, since="1.4.0") SetArbitrary<T> uniqueElements(java.util.function.Function<T,java.lang.Object> by)
Add the constraint that elements of the generated set 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,java.util.Set<T>>
- Returns:
- new arbitrary instance
-
-