chell-0.5: chell.cabal
name: chell
version: 0.5
synopsis: A simple and intuitive library for automated testing.
category: Testing
license: MIT
license-file: license.txt
author: John Millikin <john@john-millikin.com>
maintainer: Chris Martin, Julie Moronuki
build-type: Simple
cabal-version: >= 1.6
homepage: https://github.com/typeclasses/chell
bug-reports: https://github.com/typeclasses/chell/issues
tested-with: GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.3
description:
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
@
extra-source-files:
changelog.md
source-repository head
type: git
location: https://github.com/typeclasses/chell.git
flag color-output
description: Enable colored output in test results
default: True
library
ghc-options: -Wall
build-depends:
base >= 4.1 && < 5.0
, bytestring >= 0.9
, options >= 1.0 && < 2.0
, patience >= 0.2 && < 0.3
, random >= 1.0
, template-haskell >= 2.3
, text
, transformers >= 0.2
if flag(color-output)
build-depends:
ansi-terminal >= 0.5 && < 0.9
exposed-modules:
Test.Chell
other-modules:
Test.Chell.Main
Test.Chell.Output
Test.Chell.Types