microspec: Tiny QuickCheck test library with minimal dependencies
A tiny (1 module, <500 lines) property-based (and unit) testing library with minimal dependencies.
Don't add a bunch of transitive dependencies just to test your code!
Instead of reinventing the wheel (https://xkcd.com/927), we use a RSpec/HSpec-like API and run tests with QuickCheck.
import Test.Microspec main :: IO () main = microspec $ do describe "replicate" $ do it "doubles with 2" $ replicate 2 'x' == "xx" it "creates a list of the right size" $ \(Positive n) -> length (replicate n 'x') == n describe "reverse" $ do it "reverse . reverse == id" $ \l -> reverse (reverse l) == (l :: [Int]) describe "tail" $ it "length is -1" $ \(NonEmpty l) -> length (tail l :: [Int]) == length l - 1 describe "solve the halting problem" $ pending
Versions [faq] | 0.1.0.0, 0.2.0.0, 0.2.0.1, 0.2.1.0, 0.2.1.1, 0.2.1.2, 0.2.1.3 (info) |
---|---|
Dependencies | base (<5), QuickCheck (<2.12) [details] |
License | BSD-3-Clause |
Author | Tom Murphy |
Maintainer | Tom Murphy |
Revised | Revision 1 made by TomMurphy at 2018-09-12T04:37:02Z |
Category | Test, Testing |
Uploaded | by TomMurphy at 2016-09-05T18:44:00Z |
Distributions | Arch:0.2.1.3, LTSHaskell:0.2.1.3, NixOS:0.2.1.3, Stackage:0.2.1.3 |
Downloads | 2600 total (44 in the last 30 days) |
Rating | 2.0 (votes: 1) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2016-09-05 [all 1 reports] |
Downloads
- microspec-0.1.0.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.