lol-tests-0.0.0.1: A library for testing <https://hackage.haskell.org/package/lol Λ ∘ λ>.

Copyright(c) Eric Crockett 2011-2017
Chris Peikert 2011-2017
LicenseGPL-2
Maintainerecrockett0@email.com
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

Crypto.Lol.Tests

Description

Infrastructure for testing Lol.

Synopsis

Documentation

test :: Bool -> Test params Source #

Test a Bool value.

testIO :: IO Bool -> Test params Source #

Test a monadic Bool value.

testGroup :: TestName -> [Test] -> Test #

Assemble a number of tests into a cohesive group

nestGroup :: String -> [proxy (a :: k) -> Test] -> proxy a -> Test Source #

Apply parameters to a list of Test

testGroupM :: String -> [IO Test] -> Test Source #

Wrapper around QuickCheck's testGroup

genTestArgs :: (GenArgs bnch, ResultOf bnch ~ Test a) => String -> bnch -> proxy a -> Test Source #

Converts a function mapping zero or more arguments to a Test a by generating random inputs to the function

data Test params where Source #

Wrapper for simple Testable property, with phantom parameters.

Constructors

Test :: Bool -> Test params 
TestIO :: IO Bool -> Test params 

Instances

(~) * (ResultOf (Test k params)) (Test k params) => GenArgs (Test k params) Source # 

Methods

genArgs :: MonadRandom rnd => Test k params -> rnd (ResultOf (Test k params)) #