Michael Walker
65ac6ab18b
Track how many buffered writes an IORef has
2018-07-15 11:32:28 +01:00
Michael Walker
039295ef41
Rename CRef to IORef
2018-07-01 12:45:43 +01:00
Michael Walker
38ee90cee8
Turn all tests into benchmarks
2018-06-24 11:34:31 +01:00
Michael Walker
ccb4b9aa24
Split up dejafu-tests main
2018-06-24 11:29:02 +01:00
Michael Walker
ec11aa7baf
Enable systemtic par monad test
2018-06-17 13:28:50 +01:00
Michael Walker
92c8d941e7
Do not consider safe IO dependent
2018-06-17 12:49:15 +01:00
Michael Walker
118d7780a6
Fix hlint errors
2018-06-17 11:21:43 +01:00
Michael Walker
f263166a45
Invert the predicate in notAlwaysSame
...
I think having `alwaysSameBy f` and `notAlwaysSameBy f` be inverse of
each other is better than `notAlwaysSameBy (\a b -> not (f a b))`.
2018-06-10 22:30:02 +01:00
Michael Walker
54d64a16b4
Add predicate unit tests
2018-06-10 22:30:02 +01:00
Michael Walker
d0f23f5818
Reject failures in alwaysSame/On/By
2018-06-10 14:28:49 +01:00
Michael Walker
73ff73b544
Add a couple of tests for inherited masking states
...
Closes #207
2018-06-10 03:29:50 +01:00
Michael Walker
a54813926e
Remove very slow parmonad test
...
It's unfortunate, but this one test is causing travis to frequently
time out.
2018-06-10 01:42:35 +01:00
Michael Walker
6e727af8c7
Add tests for unmasking
...
Closes #212
2018-06-10 01:34:02 +01:00
Michael Walker
e8a056aa3b
Add flag to Throw/ThrowTo showing if the thread was killed
...
Closes #190
2018-06-10 01:34:02 +01:00
Michael Walker
bcadf59378
Disable length bounding by default
...
Closes #258
2018-06-03 11:29:25 +01:00
Michael Walker
dd7a537a89
Remove swarmy
...
Closes #237
2018-06-03 02:46:00 +01:00
Michael Walker
92e5b4881a
Add some tests around nested orElse/catchSTM
...
Closes #208
2018-05-02 22:09:54 +01:00
Michael Walker
feb8358861
Add tests for discard function monoids
2018-04-29 01:13:49 +01:00
Michael Walker
3c18259923
Turn on -Werror in test CI builds
2018-03-26 12:05:32 +01:00
Michael Walker
35c2069b89
Drop GHC 7.10 support
2018-03-25 10:28:20 +01:00
Michael Walker
4f4aa08fcb
Inline tasty-hedgehog dep into dejafu-tests
2018-03-24 23:14:04 +00:00
Michael Walker
2d8127774f
Fix HLint errors
2018-03-24 23:14:04 +00:00
Michael Walker
b74661559b
Fix some dejafu-tests warnings
2018-03-17 18:43:16 +00:00
Michael Walker
d51d1501e1
Remove 'Killed'
...
Closes #198
2018-03-17 18:12:44 +00:00
Michael Walker
6be0ce9d2a
Drop use of MonadRef
...
Closes #201
2018-03-17 17:11:40 +00:00
Michael Walker
501447a2cf
Rename model types to Model*
2018-03-15 12:44:52 +00:00
Michael Walker
f8ce6ef85a
Add a setting to make some recoverable errors fatal
2018-03-12 18:43:48 +00:00
Michael Walker
19f3404d1d
Correctly handle re-ordering forks and newCRefs in simplifier
...
Re-ordering forks will change thread IDs, and re-ordering newCRefs
will change CRef IDs (which will then change commit thread IDs when
executing under PSO). So before we can execute a simplified trace, we
have to consistently renumber everything again.
2018-03-11 23:15:44 +00:00
Michael Walker
dd384f01de
Implement basic semantics-preserving shrinking
2018-03-11 23:15:44 +00:00
Michael Walker
2c407b768a
DepState does not track CRef buffers under SQ
2018-03-11 23:15:44 +00:00
Michael Walker
d54ce2f9c7
Add setNumCapabilities/setNumCapabilities dep
...
Closes #243
2018-03-11 16:41:03 +00:00
Michael Walker
053ce34682
Add tests for early-exit
2018-03-05 12:37:21 +00:00
Michael Walker
dccc2c7992
Use Settings throughout dejafu-tests
2018-03-04 15:00:16 +00:00
Kirill Zaborsky
bc198a5e13
Add tests for named threads, vars, and refs
2018-03-02 22:43:02 +03:00
Kirill Zaborsky
79a736bc1c
Add tests for resultsSetXXX
2018-02-24 00:25:25 +03:00
Michael Walker
45a0ae02e1
Document how snapshotting interacts with IO
2018-02-22 19:00:44 +00:00
Michael Walker
0ce6d541e9
Automatically snapshot (when possible) in SCT
2018-02-22 19:00:44 +00:00
Michael Walker
dc48c0e058
Add tests for dontCheck
2018-02-22 19:00:44 +00:00
Kirill Zaborsky
7f5680bcd1
Add test for DiscardTrace
2018-02-21 01:07:23 +03:00
Michael Walker
1b5fca4b68
Introduce a helper function for property tests
2018-02-16 20:04:54 +00:00
Michael Walker
2fd9e9aae7
Replace QuickCheck tests with Hedgehog ones
2018-02-16 20:04:54 +00:00
Michael Walker
5cdbc7acad
Replace LeanCheck tests with Hedgehog tests
2018-02-16 20:04:54 +00:00
Michael Walker
a5b478b74c
Allow for each test type to specify its own Tasty options
2018-02-16 20:04:54 +00:00
Michael Walker
827317d970
Warn, lint, & style tests
2018-02-16 20:04:54 +00:00
Michael Walker
7b527a8793
Rearrange test hierarchy
2018-02-16 20:04:54 +00:00
Michael Walker
92cc44b548
Add tests for liftIO
...
Closes #93
2018-02-16 20:04:54 +00:00
Michael Walker
8bff75a167
Add dependency function property tests
...
The idea is that, if the dependency function is correct, then any
permutation of independent actions should give the same result.
In practice it's a little more complex, as the dependency function has
some special cases which are only valid because of how it is used. So
an "independence" function which we can use to shuffle any trace
after-the-fact has to work around those cases.
2018-02-16 20:04:52 +00:00
Michael Walker
4202ebbec1
Consolidate test-running logic
2018-02-16 20:04:39 +00:00
Michael Walker
64d24dbe24
Migrate tests from test-framework to tasty
2018-02-16 20:04:20 +00:00
Michael Walker
bc7f69c2c7
Add a multithreaded capabilities test
...
Closes #96
2018-02-16 19:14:46 +00:00