summaryrefslogtreecommitdiff
path: root/src/main/java/au/id/zancanaro/javacheck/Generator.java
diff options
context:
space:
mode:
authorCarlo Zancanaro <carlo@zancanaro.id.au>2015-06-03 12:39:14 +1000
committerCarlo Zancanaro <carlo@zancanaro.id.au>2015-06-03 12:39:14 +1000
commit7eabc41ad41e0da58fff2a6bb04212ea0cd3baa2 (patch)
tree567a3ebfc571a3728e2caf2ef565cba24321843d /src/main/java/au/id/zancanaro/javacheck/Generator.java
parent27fcf37206591c774d79ec60de8d404ed83378ac (diff)
Add some more interesting tests
Diffstat (limited to 'src/main/java/au/id/zancanaro/javacheck/Generator.java')
-rw-r--r--src/main/java/au/id/zancanaro/javacheck/Generator.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/au/id/zancanaro/javacheck/Generator.java b/src/main/java/au/id/zancanaro/javacheck/Generator.java
index c28d967..557cf97 100644
--- a/src/main/java/au/id/zancanaro/javacheck/Generator.java
+++ b/src/main/java/au/id/zancanaro/javacheck/Generator.java
@@ -1,5 +1,6 @@
package au.id.zancanaro.javacheck;
+import java.util.Iterator;
import java.util.List;
import java.util.Random;
import java.util.function.Function;
@@ -128,4 +129,8 @@ public interface Generator<T> {
default <R> Generator<R> flatMap(Function<T, Generator<R>> action) {
return (random, size) -> RoseTree.join(this.generate(random, size).map(action).map(g -> g.generate(random, size)));
}
+
+ default Iterator<T> sample(Random random, int maxSize) {
+ return new GeneratorSampleIterator<>(this, random, maxSize);
+ }
}