QuickCheck-2.14: Automatic testing of Haskell programs
Safe HaskellSafe
LanguageHaskell98

Test.QuickCheck.Poly

Description

Types to help with testing polymorphic properties.

Types A, B and C are newtype wrappers around Integer that implement Eq, Show, Arbitrary and CoArbitrary. Types OrdA, OrdB and OrdC also implement Ord and Num.

See also Test.QuickCheck.All for an automatic way of testing polymorphic properties.

Documentation

newtype A #

Constructors

A 

Fields

  • unA :: Integer
     

Instances

Instances details
Eq A # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(==) :: A -> A -> Bool

(/=) :: A -> A -> Bool

Show A # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

showsPrec :: Int -> A -> ShowS

show :: A -> String

showList :: [A] -> ShowS

CoArbitrary A # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary :: A -> Gen b -> Gen b #

Arbitrary A # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary :: Gen A #

shrink :: A -> [A] #

Function A # 
Instance details

Defined in Test.QuickCheck.Function

Methods

function :: (A -> b) -> A :-> b #

newtype B #

Constructors

B 

Fields

  • unB :: Integer
     

Instances

Instances details
Eq B # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(==) :: B -> B -> Bool

(/=) :: B -> B -> Bool

Show B # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

showsPrec :: Int -> B -> ShowS

show :: B -> String

showList :: [B] -> ShowS

CoArbitrary B # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary :: B -> Gen b -> Gen b #

Arbitrary B # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary :: Gen B #

shrink :: B -> [B] #

Function B # 
Instance details

Defined in Test.QuickCheck.Function

Methods

function :: (B -> b) -> B :-> b #

newtype C #

Constructors

C 

Fields

  • unC :: Integer
     

Instances

Instances details
Eq C # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(==) :: C -> C -> Bool

(/=) :: C -> C -> Bool

Show C # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

showsPrec :: Int -> C -> ShowS

show :: C -> String

showList :: [C] -> ShowS

CoArbitrary C # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary :: C -> Gen b -> Gen b #

Arbitrary C # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary :: Gen C #

shrink :: C -> [C] #

Function C # 
Instance details

Defined in Test.QuickCheck.Function

Methods

function :: (C -> b) -> C :-> b #

newtype OrdA #

Constructors

OrdA 

Fields

Instances

Instances details
Eq OrdA # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(==) :: OrdA -> OrdA -> Bool

(/=) :: OrdA -> OrdA -> Bool

Num OrdA # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(+) :: OrdA -> OrdA -> OrdA

(-) :: OrdA -> OrdA -> OrdA

(*) :: OrdA -> OrdA -> OrdA

negate :: OrdA -> OrdA

abs :: OrdA -> OrdA

signum :: OrdA -> OrdA

fromInteger :: Integer -> OrdA

Ord OrdA # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

compare :: OrdA -> OrdA -> Ordering

(<) :: OrdA -> OrdA -> Bool

(<=) :: OrdA -> OrdA -> Bool

(>) :: OrdA -> OrdA -> Bool

(>=) :: OrdA -> OrdA -> Bool

max :: OrdA -> OrdA -> OrdA

min :: OrdA -> OrdA -> OrdA

Show OrdA # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

showsPrec :: Int -> OrdA -> ShowS

show :: OrdA -> String

showList :: [OrdA] -> ShowS

CoArbitrary OrdA # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary :: OrdA -> Gen b -> Gen b #

Arbitrary OrdA # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary :: Gen OrdA #

shrink :: OrdA -> [OrdA] #

Function OrdA # 
Instance details

Defined in Test.QuickCheck.Function

Methods

function :: (OrdA -> b) -> OrdA :-> b #

newtype OrdB #

Constructors

OrdB 

Fields

Instances

Instances details
Eq OrdB # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(==) :: OrdB -> OrdB -> Bool

(/=) :: OrdB -> OrdB -> Bool

Num OrdB # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(+) :: OrdB -> OrdB -> OrdB

(-) :: OrdB -> OrdB -> OrdB

(*) :: OrdB -> OrdB -> OrdB

negate :: OrdB -> OrdB

abs :: OrdB -> OrdB

signum :: OrdB -> OrdB

fromInteger :: Integer -> OrdB

Ord OrdB # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

compare :: OrdB -> OrdB -> Ordering

(<) :: OrdB -> OrdB -> Bool

(<=) :: OrdB -> OrdB -> Bool

(>) :: OrdB -> OrdB -> Bool

(>=) :: OrdB -> OrdB -> Bool

max :: OrdB -> OrdB -> OrdB

min :: OrdB -> OrdB -> OrdB

Show OrdB # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

showsPrec :: Int -> OrdB -> ShowS

show :: OrdB -> String

showList :: [OrdB] -> ShowS

CoArbitrary OrdB # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary :: OrdB -> Gen b -> Gen b #

Arbitrary OrdB # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary :: Gen OrdB #

shrink :: OrdB -> [OrdB] #

Function OrdB # 
Instance details

Defined in Test.QuickCheck.Function

Methods

function :: (OrdB -> b) -> OrdB :-> b #

newtype OrdC #

Constructors

OrdC 

Fields

Instances

Instances details
Eq OrdC # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(==) :: OrdC -> OrdC -> Bool

(/=) :: OrdC -> OrdC -> Bool

Num OrdC # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

(+) :: OrdC -> OrdC -> OrdC

(-) :: OrdC -> OrdC -> OrdC

(*) :: OrdC -> OrdC -> OrdC

negate :: OrdC -> OrdC

abs :: OrdC -> OrdC

signum :: OrdC -> OrdC

fromInteger :: Integer -> OrdC

Ord OrdC # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

compare :: OrdC -> OrdC -> Ordering

(<) :: OrdC -> OrdC -> Bool

(<=) :: OrdC -> OrdC -> Bool

(>) :: OrdC -> OrdC -> Bool

(>=) :: OrdC -> OrdC -> Bool

max :: OrdC -> OrdC -> OrdC

min :: OrdC -> OrdC -> OrdC

Show OrdC # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

showsPrec :: Int -> OrdC -> ShowS

show :: OrdC -> String

showList :: [OrdC] -> ShowS

CoArbitrary OrdC # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

coarbitrary :: OrdC -> Gen b -> Gen b #

Arbitrary OrdC # 
Instance details

Defined in Test.QuickCheck.Poly

Methods

arbitrary :: Gen OrdC #

shrink :: OrdC -> [OrdC] #

Function OrdC # 
Instance details

Defined in Test.QuickCheck.Function

Methods

function :: (OrdC -> b) -> OrdC :-> b #