summaryrefslogtreecommitdiff
path: root/src/main/java/au/id/zancanaro/javacheck/ShrinkTree.java
AgeCommit message (Collapse)Author
2015-07-06Fix up some minor code-quality thingsCarlo Zancanaro
2015-07-06Fix the warnings from the previous commitCarlo Zancanaro
2015-06-09A few changes, as suggested by static analysisCarlo Zancanaro
2015-06-04Fix up generic types by adding bounds where possible instead of rigid ↵Carlo Zancanaro
constraints
2015-06-04Move stuff over to using streams instead of iterators: much nicer!Carlo Zancanaro
2015-06-04Clean up a bit of the ShrinkTree stuff, particularly for shrinkingCarlo Zancanaro
2015-06-03Change shrinking a bit, add more generators, fix some types, moved suchThatCarlo Zancanaro
Shrinking is now done using a "ShrinkStrategy". It's pretty similar to what it used to be in the end, but instead of generating new ShrinkTree<T>s yourself, you just generate smaller <T>s, and the generator framework will re-call your strategy to shrink smaller elements. (So, essentially, ShrinkStrategy.shrink(T obj) returns an Iterator<T> which then has smaller trees calculated from it.) Added some more generators. In particular: longs and doubles. Fixed some types, so now Generator.tuple(integer(), string()) will work. Yay! Move suchThat to Generator, so now integer().suchThat(x -> x < 10) will work instead of the old Generators.suchThat(x -> x < 10, integer()), which felt a bit weird.
2015-06-03Rename RoseTree to ShrinkTree (less confusing and more specific)Carlo Zancanaro