summaryrefslogtreecommitdiff
path: root/src/main/java/au/id/zancanaro/javacheck/Generator.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/au/id/zancanaro/javacheck/Generator.java')
-rw-r--r--src/main/java/au/id/zancanaro/javacheck/Generator.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/au/id/zancanaro/javacheck/Generator.java b/src/main/java/au/id/zancanaro/javacheck/Generator.java
index ac731de..5a8fec3 100644
--- a/src/main/java/au/id/zancanaro/javacheck/Generator.java
+++ b/src/main/java/au/id/zancanaro/javacheck/Generator.java
@@ -5,6 +5,7 @@ import java.util.List;
import java.util.Random;
import java.util.function.Function;
import java.util.function.Predicate;
+import java.util.stream.Stream;
/**
* Generators are a way of producing random objects and their associated shrink
@@ -170,7 +171,11 @@ public interface Generator<T> {
return (random, size) -> this.generate(random, size).withShrinkStrategy(strategy);
}
- default Iterator<T> sample(Random random, int maxSize) {
- return new GeneratorSampleIterator<>(this, random, maxSize);
+ default Stream<T> sample(Random random, int maxSize) {
+ return Stream.generate(() -> this.generate(random, maxSize).getValue());
+ }
+
+ default Stream<T> sample() {
+ return sample(new Random(), 100);
}
}