Commit Graph

77 Commits

Author SHA1 Message Date
Michael Walker
481bf1eca6 Rewrite tasty-dejafu changelog 2018-02-16 18:59:20 +00:00
Michael Walker
b61cc71d36 Prepare for tasty-dejafu-1.0.1.0 release 2018-02-13 18:57:19 +00:00
Michael Walker
7fcebe366c Add CHANGELOG entries 2018-02-13 18:57:19 +00:00
Michael Walker
a366b812d0 Clarify role of discard function in Tasty testDejafusDiscard 2018-02-13 18:45:20 +00:00
Andreas Herrmann
1ad606b6a5 testDejafusDiscard takes a list of predicates 2018-02-13 12:03:42 +01:00
Michael Walker
ebfe250ee7 tasty-dejafu-1.0.0.1 release 2018-01-09 10:49:06 +00:00
Michael Walker
f7ed31da32 Bump upper bound of tasty to 1.1 2018-01-09 10:46:57 +00:00
Michael Walker
fdbcb8b375 tasty-dejafu-1.0.0.0 release 2017-12-23 13:18:20 +00:00
Michael Walker
f310c60bc5 Update copyright years 2017-12-13 07:24:18 +00:00
Michael Walker
81bcb5a351 Split up Test.DejaFu.Common 2017-12-12 14:07:22 +00:00
Michael Walker
5ee2590f0e Rework docs
Closes #146
Closes #147
Closes #156
2017-12-12 14:07:22 +00:00
Michael Walker
020e3967f7 Change order of arguments to test functions
1. Discard function (if present)
2. Way              (if present)
3. Memory type      (if present)
4. Name of test
5. Predicate
6. Action

For multi-predicate functions, 4 and 5 are replaced with a list.
2017-12-12 14:07:22 +00:00
Michael Walker
6644bf76ef Remove _casesChecked from Result
It's now almost meaningless how many cases were examined before
finding a failure given that, ideally, only failures will be returned
at all.
2017-12-12 14:07:22 +00:00
Michael Walker
db95dde7df Give predicates discard functions 2017-12-12 14:07:22 +00:00
Michael Walker
6eaae0a589 Wrap predicate functions in a newtype & separate ty params
Also adds a Functor and Profunctor instance for predicates.  The old
predicate type is kept as an alias for the (common) case where both
tyvars are the same.
2017-12-12 14:07:22 +00:00
Michael Walker
45256193c0 Implement bound threads
This also adds forkOS(N) and isCurrentThreadBound to MonadConc, a
breaking change.

Note: forkOSWithUnmask(N) is NOT added to MonadConc, as it isn't
supported in base-4.8 (GHC 7.10).  See #132 for the action on this.

A bound thread under test gets a dedicated worker thread, which is
forked bound using the underlying MonadConc.  This worker is used for
all lifted actions, with execution as normal otherwise.
2017-12-12 14:06:59 +00:00
Michael Walker
31d29c11ea Require a 'MonadConc n' instance to run 'ConcT r n' expressions
This is preparation for adding bound threads.  The instance isn't used
in this commit, but the diff is large enough that I feel this should
be a separate commit for ease of review.

Fallout:

- The MonadBaseControl IO instance is gone, as I'm not sure how to do
  it generally.
- The pure/IO split is gone, everything is now monadic.
- The execution, SCT, and dejafu functions are of the form (MonadConc
  n, MonadRef r n) => ...
2017-12-12 14:06:59 +00:00
Michael Walker
99cae72b42 Pick version numbers for next-supermajor release 2017-12-12 14:06:59 +00:00
Michael Walker
d750342c77 hunit-dejafu-0.7.1.1 and tasty-dejafu-0.7.1.1 releases 2017-11-30 22:08:56 +00:00
Michael Walker
fa1836c3a8 Add missing haddock @since annotations 2017-11-30 22:08:38 +00:00
Michael Walker
82966c43f3 hunit-dejafu-0.7.1.0 and tasty-dejafu-0.7.1.0 releases 2017-11-30 21:43:12 +00:00
Michael Walker
417415937a Add testPropertyFor to {hunit,tasty}-dejafu
Closes #159
2017-11-30 21:40:25 +00:00
Michael Walker
a0801d65eb Fix new hlint warnings 2017-11-20 19:25:48 +00:00
Michael Walker
e7b18ffd50 tasty-dejafu-0.7.0.3 release 2017-11-02 18:08:43 +00:00
Michael Walker
42ea4ca2f2 tasty-dejafu: bump upper bound of tasty to 0.13 2017-11-02 18:07:26 +00:00
Michael Walker
fa7d4bf445 Use MIN_TOOL_VERSION_ghc rather than __GLASGOW_HASKELL_ 2017-10-28 17:26:52 +01:00
Michael Walker
31c4b9606a dejafu-0.9.0.0 & {tasty,hunit}-dejafu-0.7.0.2 releases 2017-10-11 10:34:26 +01:00
Michael Walker
6c4e64007f Release dejafu-0.8.0.0, {hunit,tasty}-dejafu-0.7.0.1 2017-09-26 17:22:08 +01:00
Michael Walker
b0f6aa5c7e Adjust changelog format 2017-08-19 16:38:39 +01:00
Michael Walker
4d05ef6798 Release 2017-08-10 21:51:11 +01:00
Michael Walker
b99caea84c Expose discard functions from Test.Tasty.DejaFu 2017-08-10 16:55:06 +01:00
Michael Walker
a0a5a493d5 Bump versions for release 2017-06-07 17:09:01 +01:00
Michael Walker
6bc2fd044f Remove unused imports 2017-06-07 16:59:24 +01:00
Michael Walker
6b1fd17024 Implement uniform random scheduling
Adds a new `uniformly` smart constructor and `sctUniformRandom`
function.

Also renames `sctRandom` to `sctWeightedRandom`.
2017-06-07 16:50:56 +01:00
Michael Walker
1146ce9b38 Add a smart constructor for constructing swarmy executions
The `randomly` constructor now corresponds exactly to the old
`Randomly`.

Also refactor tests a bit.
2017-06-07 16:50:56 +01:00
Michael Walker
fba26e6c73 Make Way abstract and expose smart constructors 2017-06-07 16:50:56 +01:00
Michael Walker
d65b8359a9 Allow re-using the weights for multiple executions in sctRandom 2017-06-07 16:45:43 +01:00
Michael Walker
748a55d813 Re-export Test.DejaFu.Refinement from Test.DejaFu 2017-06-07 14:25:55 +01:00
Michael Walker
e785e51ddc Expose refinement properties in hunit-dejafu and tasty-dejafu 2017-06-07 14:20:04 +01:00
Michael Walker
2d97030abe tasty-dejafu-0.5.0.0 2017-04-08 21:18:20 +01:00
Michael Walker
d3062234fa Make Way a GADT.
Closes #65.
2017-04-08 20:57:25 +01:00
Michael Walker
9c33eff1f7 Add Haddock @since annotations to everything in dejafu/hunit/tasty 2017-04-08 20:21:22 +01:00
Michael Walker
5f9ad29b1b Include READMEs in cabal sdists.
Closes #79.
2017-04-08 10:30:58 +01:00
Michael Walker
cc27e03d6d Use stylish-haskell to format import lists. 2017-04-08 05:42:25 +01:00
Michael Walker
5cd55a1921 Add an HLint2 config file & fix warnings. 2017-04-08 05:42:25 +01:00
Michael Walker
de8ced69a6 Fiddle with changelog format. 2017-04-07 20:05:11 +01:00
Michael Walker
60f771d50e Write changelogs. 2017-04-07 18:16:30 +01:00
Michael Walker
fdc0190d25 Expose Way in tasty-dejafu.
Finally bump the minimum version of dejafu in tasty-dejafu too!
2017-02-20 03:17:22 +00:00
Michael Walker
5accde895e Specialise types in 'Test.DPOR.Internal' and rename.
This breaks backwards compatibility, as things which were polymorphic
are no longer.
2016-12-05 07:36:00 +00:00
Michael Walker
e1162dc033 Add missing module headers to {hunit,tasty}-dejafu. 2016-08-26 11:16:59 +01:00