hsExprTest-3.6.5: Expression Testing
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.QuickCheck.Convertible

Description

Conversions for tests, this adds possiblity to covert lists of Fun wrapped functions to lists of functions. Note that you should never need to use the Convertible typeclass in you code and you cannot write new instances for it (to prevent unexpected behaviour in tests).

Documentation

class Convertible a b #

Minimal complete definition

convert'

Instances

Instances details
Coercible a b => Convertible a b #

base case, can be overridden by Fun or list case. This allows as to covert between any coercible values

Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: a -> b

Convertible a b => Convertible [a] [b] #

Ideally this overload would be used only with the Fun overload, but since the Coercible one is less specific it is impossible to give this one lower priority, so we must give it higher to avoid abiguity.

Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: [a] -> [b]

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2) => Convertible (Fun (a'1, a'2) b) (a1 -> a2 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2) b -> a1 -> a2 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3) => Convertible (Fun (a'1, a'2, a'3) b) (a1 -> a2 -> a3 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3) b -> a1 -> a2 -> a3 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4) => Convertible (Fun (a'1, a'2, a'3, a'4) b) (a1 -> a2 -> a3 -> a4 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4) b -> a1 -> a2 -> a3 -> a4 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5) b) (a1 -> a2 -> a3 -> a4 -> a5 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5) b -> a1 -> a2 -> a3 -> a4 -> a5 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10, Convertible a11 a'11) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10, Convertible a11 a'11, Convertible a12 a'12) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10, Convertible a11 a'11, Convertible a12 a'12, Convertible a13 a'13) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10, Convertible a11 a'11, Convertible a12 a'12, Convertible a13 a'13, Convertible a14 a'14) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13, a'14) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> a14 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13, a'14) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> a14 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10, Convertible a11 a'11, Convertible a12 a'12, Convertible a13 a'13, Convertible a14 a'14, Convertible a15 a'15) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13, a'14, a'15) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> a14 -> a15 -> b') # 
Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13, a'14, a'15) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> a14 -> a15 -> b'

(Convertible b b', Convertible a1 a'1, Convertible a2 a'2, Convertible a3 a'3, Convertible a4 a'4, Convertible a5 a'5, Convertible a6 a'6, Convertible a7 a'7, Convertible a8 a'8, Convertible a9 a'9, Convertible a10 a'10, Convertible a11 a'11, Convertible a12 a'12, Convertible a13 a'13, Convertible a14 a'14, Convertible a15 a'15, Convertible a16 a'16) => Convertible (Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13, a'14, a'15, a'16) b) (a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> a14 -> a15 -> a16 -> b') #

Instances with automatic uncurring for higher arity functions

Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun (a'1, a'2, a'3, a'4, a'5, a'6, a'7, a'8, a'9, a'10, a'11, a'12, a'13, a'14, a'15, a'16) b -> a1 -> a2 -> a3 -> a4 -> a5 -> a6 -> a7 -> a8 -> a9 -> a10 -> a11 -> a12 -> a13 -> a14 -> a15 -> a16 -> b'

(Convertible a a', Convertible b b') => Convertible (Fun a' b) (a -> b') #

Instances for QuickCheck generated functions, these have higher priority then the Coercible ones.

Instance details

Defined in Test.QuickCheck.Convertible

Methods

convert' :: Fun a' b -> a -> b'

convert :: Convertible a b => a -> b #