The chell package

[Tags:library, mit]

Chell is a simple and intuitive library for automated testing. It natively supports assertion-based testing, and can use companion libraries such as chell-quickcheck to support more complex testing strategies.

An example test suite, which verifies the behavior of artithmetic operators.

{-# LANGUAGE TemplateHaskell #-}

import Test.Chell

tests_Math :: Suite
tests_Math = suite "math"
    test_Addition
    test_Subtraction

test_Addition :: Test
test_Addition = assertions "addition" $ do
    $expect (equal (2 + 1) 3)
    $expect (equal (1 + 2) 3)

test_Subtraction :: Test
test_Subtraction = assertions "subtraction" $ do
    $expect (equal (2 - 1) 1)
    $expect (equal (1 - 2) (-1))

main :: IO ()
main = defaultMain [tests_Math]
$ ghc --make chell-example.hs
$ ./chell-example
PASS: 2 tests run, 2 tests passed

Properties

Versions 0.1, 0.1.1, 0.1.2, 0.1.3, 0.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.4, 0.4.0.1
Dependencies ansi-terminal (==0.5.*), base (>=4.1 && <4.8), bytestring (>=0.9), options (==0.1.*), patience (==0.1.*), random (>=1.0), system-filepath (==0.4.*), template-haskell (>=2.3), text, transformers (>=0.2) [details]
License MIT
Author John Millikin <jmillikin@gmail.com>
Maintainer John Millikin <jmillikin@gmail.com>
Stability Unknown
Category Testing
Home page https://john-millikin.com/software/chell/
Bug tracker mailto:jmillikin@gmail.com
Source repository head: bzr branch https://john-millikin.com/branches/chell/0.3/
this: bzr branch https://john-millikin.com/branches/chell/0.3/ -r chell_0.3
Uploaded Thu May 24 04:18:00 UTC 2012 by JohnMillikin
Updated Mon Dec 29 11:39:55 UTC 2014 by HerbertValerioRiedel to revision 1
Distributions Debian:0.4.0.1, LTSHaskell:0.4.0.1, NixOS:0.4.0.1, Stackage:0.4.0.1, Tumbleweed:0.4.0.1
Downloads 4841 total (54 in the last 30 days)
Votes
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Flags

NameDescriptionDefaultType
color-outputEnable colored output in test resultsEnabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees