Changelog of @hackage/hedgehog 0.5

Version 0.5 (2017-07-16)

  • Parallel state machine testing, allows detection of commands which are not-atomic (#98, @jystic)
  • Easier to use variables for state machine testing (#94, @jystic)
  • MonadGen class allows the use of transformers like ReaderT and StateT on the outside of generators (#99, @jystic)
  • Better error messages for tests which throw exceptions (#95, @jystic)
  • Separated test input generation and assertions in to PropertyT and TestT respectively, this allows TestT to have a MonadBaseControl instance (#96, @jystic)
  • This document grew links to the pull requests which introduced various changes (#93, @moodmosaic)

Version 0.4.1 (2017-06-28)

  • Fixed runtime type error that could occur when shrinking state machine commands (#91, @jystic)

Version 0.4 (2017-06-28)

Version 0.3 (2017-06-11)

  • Exponential range combinators (#43, @chris-martin)
  • Roundtrip example, check out the blog post (#85, @thumphries)
  • tripping now displays intermediate value (#85, @jystic)
  • distribute function for pulling a transformer out to the top level (#83, @jystic)
  • withExceptT function for executing tests with an inner ExceptT (e.g. Test (ExceptT x m) a) (#83, @jystic)

Version 0.2.2 (2017-05-16)

Version 0.2.1 (2017-05-09)

  • Added ascii, latin1, unicode character generators (#73, @jystic)

Version 0.2 (2017-05-06)

  • Added a quiet test runner which can be activated by setting HEDGEHOG_VERBOSITY=0 (@jystic)
  • Concurrent test runner does not display tests until they are executing (@jystic)
  • Test runner now outputs a summary of how many successful / failed tests were run (@jystic)
  • checkSequential and checkParallel now allow for tests to be run without Template Haskell (@jystic)
  • Auto-discovery of properties is now available via discover instead of being baked in (@jystic)
  • annotate allows source code to be annotated inline with extra information (@jystic)
  • forAllWith can be used to generate values without a Show instance (@jystic)
  • Removed uses of Typeable to allow for generating types which cannot implement it (@jystic)