tasty-dejafu

Deja Fu support for the Tasty test framework.

https://github.com/barrucadu/dejafu

Version on this page:0.7.0.2
LTS Haskell 22.13:2.1.0.1
Stackage Nightly 2024-03-14:2.1.0.1
Latest on Hackage:2.1.0.1

See all snapshots tasty-dejafu appears in

MIT licensed by Michael Walker
Maintained by [email protected]
This version can be pinned in stack with:tasty-dejafu-0.7.0.2@sha256:b3fd03939c20e5249d32fb555829af7cef4960fa07430757e8440ae6a871dfa6,1498

Module documentation for 0.7.0.2

tasty-dejafu

Integration between the dejafu library for concurrency testing and tasty. This lets you easily incorporate concurrency testing into your existing test suites.

The documentation of the latest developmental version is available online.

Contributing

Bug reports, pull requests, and comments are very welcome!

Feel free to contact me on GitHub, through IRC (#haskell on freenode), or email ([email protected]).

Changes

Release Notes

All notable changes to this project will be documented in this file.

This project is versioned according to the Package Versioning Policy, the de facto standard Haskell versioning scheme.

0.7.0.2

Miscellaneous

  • dejafu-0.9 support

0.7.0.1

Miscellaneous

  • dejafu-0.8 support

0.7.0.0

Test.Tasty.DejaFu

  • Two new functions: testDejafuDiscard and testDejafuDiscardIO, allowing you to selectively discard results or traces.
  • The Discard type and defaultDiscarder function from dejafu is now re-exported.

Miscellaneous

  • Lower version bound on dejafu raised to 0.7.1.0.

0.6.0.0

Test.Tasty.DejaFu

  • The refinement property testing functionality of dejafu is exposed in the new testProperty function, and re-exported values.
  • Due to changes in dejafu, the Way type is now abstract and exposes smart constructor functions:
    • systematically, corresponding to the old Systematically.
    • randomly, corresponding to the old Randomly.
    • uniformly, a new uniform random (as opposed to weighted random) scheduler.
    • swarmy, corresponding to the old Randomly and specifying how many executions to use the same weights for.
  • The defaultWay, defaultMemType, and defaultBounds values are all now re-exported.

Miscellaneous

  • Only dejafu 0.7 is supported.

0.5.0.0

Test.Tasty.DejaFu

  • Due to changes in dejafu, the Way type no longer takes a parameter; it is now a GADT.

Miscellaneous

  • There is now a changelog.
  • Every definition and instance now has a Haddock “@since” annotation.
  • Only dejafu 0.6 is supported.

0.4.0.0

Test.Tasty.DejaFu

  • All the functions which did take a Bounds now take a Way instead and support random scheduling as well.
  • The Way type from dejafu is now re-exported.
  • The IsOption instance (and so corresponding command-line argument) for Bounds is gone.
  • A new IsOption instance for Way (and so corresponding command-line argument):
    • “systematically”: systematic testing with the default bounds.
    • “randomly”: 100 executions with a fixed random seed.

Miscellaneous

  • The minimum supported version of dejafu has been increased to 0.5 (from 0.2)

0.3.0.2

Miscellaneous

  • Now supports concurrency 1.0.0.0 and dejafu 0.4.0.0

0.3.0.1

Miscellaneous

  • Now supports GHC 8.

0.3.0.0

Test.Tasty.DejaFu

  • New IsTest instances for ConcST t (Maybe String) and ConcIO (Maybe String), with a Just String result being a test failure with an error message.
  • The Bounds type from dejafu is now re-exported.
  • New IsOption instances for Bounds and MemType.
  • New command-line parameter to set the MemType parameter:
    • “sc”: sequential consistency.
    • “tso”: total store order.
    • “pso”: partial store order.

Miscellaneous

  • Now supports dejafu 0.2 (again).

0.1.1.0

This version was misnumbered! It should have been 0.2.1.0!

Miscellaneous

  • Now supports dejafu 0.3, but drops support for dejafu 0.2.

0.2.0.0

Initial release. Go read the API docs.