The chell package

[ Tags: library, mit, testing ] [ Propose Tags ]

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, 0.4.0.2
Dependencies ansi-terminal (>=0.5 && <0.8), base (>=4.1 && <5.0), bytestring (>=0.9), options (>=1.0 && <2.0), patience (==0.1.*), random (>=1.0), template-haskell (>=2.3), text, transformers (>=0.2) [details]
License MIT
Author John Millikin <john@john-millikin.com>
Maintainer John Millikin <john@john-millikin.com>
Category Testing
Home page https://john-millikin.com/software/chell/
Bug tracker mailto:jmillikin@gmail.com
Source repository head: git clone https://john-millikin.com/code/chell/
this: git clone https://john-millikin.com/code/chell/(tag chell_0.4.0.2)
Uploaded Tue Dec 12 06:21:51 UTC 2017 by JohnMillikin
Distributions Debian:0.4.0.1, LTSHaskell:0.4.0.1, NixOS:0.4.0.2, Tumbleweed:0.4.0.1
Downloads 6627 total (773 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-12-12 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Flags

NameDescriptionDefaultType
color-output

Enable colored output in test results

EnabledAutomatic

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