A library for describing test suites / specs.
Mote cannot actually run tests itself - nor does it have an opinion of what a test even is! It just provides a means of describing tests and groups, and then generating a plan to resolve which tests should be skipped when using combinators like
skip. The plan can then be interpreted to do something to actually run the tests.
While we already have the perfectly good
purescript-test-unit libraries, these are restrictive in how they allow tests to be defined. Mote provides a more flexible DSL,
MoteT, that allows effects to be performed while building up the test suite... this opens the door to trouble, but sometimes you might need to access some kind of
Reader-based environment or generate tests from filesystem inputs, now you have the option to do this amidst the test definitions.
Mote test/group descriptions also accommodate the of bracketing - describing pre/post actions to allow some kind of setup/teardown if necessary. The pre-action can generate a value that the post-action will later consume.
Some demos of interpreting a Mote plan as a
TestSuite are provided in the
bower install purescript-mote
Module documentation is published on Pursuit.