PureScript Spec is a testing framework for Purescript, inspired by hspec.
- PureScript Spec - The Guide explains in detail how to use purescript-spec. You should probably start here.
- purescript-spec on Pursuit features version information and API documentation.
-
8.1.1
- Fixed #149 - broken reporting via
consoleReporter
andspecReporter
for parallel tests.
- Fixed #149 - broken reporting via
-
8.0.0
runSpec
renamed torunSpecPure
.runSpecT
renamed toevalSpecT
.- Old versions of
runSpec
andrunSpecT
are left in, but deprecated, with the warning pointing torunSpecAndExitProcess
fromspec-node
. - Added
spec-node
docs.
-
7.6.1
- Upgraded to Spago Next
- Dropped support for Pulp and Bower
-
7.5.1
-
7.4.1
-
7.3.0
- TeamCity reporter now supports parallel execution. #132 by @Neppord
-
7.2.0
- Added a reporter for TeamCity by @Neppord
- Use
unsafeRegex
instead of methods frompurescript-partial
to create a regex by @toastal
-
7.1.0
- Added the
AnyShow
newtype wrapper for asserting on values that don't have a Show instance. By @sigma-andex and @i-am-the-slime in #125
- Added the
-
4.0.0
- Rename
run
andrun'
torunSpec
andrunSpecM
. - Run tests in
Aff
instead ofEffect
. - New assertions:
- Aff:
expectError
,shouldReturn
,shouldNotReturn
- String:
shouldContain
,shouldNotContain
,shouldStartWith
,shouldEndWith
- Aff:
- Parallel test execution /
parallel
andsequential
combinators - Hooks:
aroundWith
,around
,around_
,before
,before_
,beforeWith
,beforeAll
,beforeAll_
,after
,after_
,afterAll
,afterAll_
- Upgrade to PureScript 0.13.x.
- Rename
-
3.1.0
- Add
shouldSatisfy
assertion and complement, add exit flag to runner config
- Add
-
3.0.0
- Upgrade to PureScript 0.12.x, which is non-backwards compatible to 0.11.x.
-
2.0.0
- Update to purescript-aff 4
-
1.0.0
- No additions from 0.14.0.
-
0.14.0
- Remove unused "slow" from Dot reporter config
-
0.13.0
- Upgrade to PureScript 0.11.x, which is non-backwards compatible to 0.10.x.
-
0.12.4
- Upgrade to purescript-pipes 2.1.0
-
0.12.3
- Export and document
run'
function (for configuration), fixes #38
- Export and document
-
0.12.2
- Reexport common reporters in
Test.Spec.Reporter
module, fixes #37
- Reexport common reporters in
-
0.12.1
- Move array of results to runner event, fixes #36
-
0.12.0
- Again support multiple reporters, fixes #33
-
0.11.0
- Publish The Guide on GitHub pages
- Collapse result entries in Maps to deduplicate describes, fixes #9
- Reimplement Node reporters and runner using purescript-pipes. An upgrade
might require a change in your
main
type signature. The typeTest.Spec.Runner.RunnerEffects
makes it more convenient to specify all effect rows:- When using regular specs, use
main :: Effect Unit
- When using purescript-spec-discovery, use
main :: Effect Unit
- When using regular specs, use
-
0.10.0
- Defer test execution with Aff to have greater control. Test runners can
either collect and run all tests, and then report their results, using
the provided
run
andReporter
interface, or they can implement the test run in another way bycollect
ing aSpec
and running theAff
s in some special way.
- Defer test execution with Aff to have greater control. Test runners can
either collect and run all tests, and then report their results, using
the provided
-
0.9.0
- Upgrade dependencies to 2.x
- Require PureScript 0.10.x
-
0.8.0
- Compatibility with PureScript 0.9.1
-
0.7.5
- Bump dependency versions.
-
0.7.4
- Use
purescript-node-process
instead of custom PROCESS effect.
- Use
-
0.7.2
- Update purescript-strings for PS 0.7.4 compatibility.
- Make all dependencies flexible.
- Fix case statements to remove warnings.
-
0.7.1
- Workaround for escape sequence bug in
psc-bundle
, see:
- Workaround for escape sequence bug in
-
0.7.0
- Rename
runNode
torun
and place it inTest.Spec.Runner
. - Support browser testing.
- Rename
-
0.6.2
- Add more assertions.
-
0.6.1
- Fix bug in
shouldContain
assertion for strings.
- Fix bug in
-
0.6.0
- Adapt for PureScript 0.7 compatibility.
-
0.5.0
- Make reporters pluggable.
-
0.4.0
- Add async support in
it
usingAff
.
- Add async support in
If you have any issues or possible improvements please file them as GitHub Issues. Pull requests are encouraged.