summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-06-11Report command lists more nicely (line breaks between commands); report ↵Carlo Zancanaro
number of nodes visited during shrinking; other small fixes
2015-06-10Support enums in the ObjectGeneration stuffCarlo Zancanaro
2015-06-09A few changes, as suggested by static analysisCarlo Zancanaro
2015-06-09Generalise the ObjectGeneration stuffCarlo Zancanaro
The new ObjectGeneration stuff is now used to generate everything for a test case, which means it's all unified and "nice" now. Add a @UseGenerator annotation to be used to specify how to generate specific field values. Obviously, not everything can be generated magically, so if you specify a @DataSource in your test then it will be used in preference to any magically generated value.
2015-06-09Add an ObjectGenerator<>, and related machinery (also a mapOf generator)Carlo Zancanaro
2015-06-09Clean up importsCarlo Zancanaro
2015-06-06Make the initial state pass through to CommandList (for isValid())Carlo Zancanaro
2015-06-06Lots of work on the stateful checking stuff: it's a fair bit nicer nowCarlo Zancanaro
2015-06-05More work on the stateful checker; still not perfect, but it's getting betterCarlo Zancanaro
2015-06-05First cut of a stateful testing framework (it's pretty hacky at the moment, ↵Carlo Zancanaro
but all the pieces are there)
2015-06-04Static imports for a test, just to make it read a little bit more nicelyCarlo Zancanaro
2015-06-04Fix up generic types by adding bounds where possible instead of rigid ↵Carlo Zancanaro
constraints
2015-06-04Make a method static, just because I canCarlo Zancanaro
2015-06-04Move stuff over to using streams instead of iterators: much nicer!Carlo Zancanaro
2015-06-04Don't convert to/from arrays/lists unnecessarily while running testsCarlo Zancanaro
2015-06-04Properly mark Generator and ShrinkStrategy with @FunctionalInterfaceCarlo 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
2015-06-03Add some more interesting testsCarlo Zancanaro
2015-06-02Fix up some static analysis warnings and improve @DataPoint detectionCarlo Zancanaro
2015-06-01Make shrinking print where it's up to when signal (ie. ctrl+c) before exitingCarlo Zancanaro
2015-06-01Make listOf able to take a min/max length of listCarlo Zancanaro
2015-06-01Add some docs to the Generator interfaceCarlo Zancanaro
2015-06-01Apparently bitbucket doesn't like org mode at allCarlo Zancanaro
2015-06-01Add a simple readme with an exampleCarlo Zancanaro
2015-06-01Fix up static analysis issues (FindBugs and Intellij IDEA analysis)Carlo Zancanaro
2015-06-01Rename fmap -> map (apparently that's what Java's going with, see ↵Carlo Zancanaro
java.util.Optional)
2015-06-01Fix up list shrinking, remove minor superfluous thingsCarlo Zancanaro
2015-06-01Move packages, make lists shrink in size, generate lists instead of arrays ↵Carlo Zancanaro
as the 'primitive' operation (issues with generics)
2015-06-01Add @DataSource, allow printing of RoseTrees, other small changes to generatorsCarlo Zancanaro
2015-06-01Just some rearranging, renaming and clean-upCarlo Zancanaro
2015-05-31Lots more updatesCarlo Zancanaro
+ add a list generator, and some more number generators. + bugfix the assumption checking stuff: if it failed once it would pretty likely continue to fail! + write some simple actualy properties: - reverse . reverse = id - sort . sort = sort
2015-05-31Improve lots of thingsCarlo Zancanaro
In particular: + make output more sane and less all over the place + just ignore original exception, the shrunk one is the only one which really matters + fit into the jUnit framework more (so now @Before, @After and stuff work)
2015-05-31Better code, based off ParentRunner among other thingsCarlo Zancanaro
2015-05-30Initial commit: only works for plain int typed argumentsCarlo Zancanaro