less-arbitrary-0.1.0.0: Linear time testing with variant of Arbitrary class that always terminates.

Safe HaskellNone
LanguageHaskell2010

Test.LessArbitrary

Documentation

class LessArbitrary a where Source #

Minimal complete definition

Nothing

Methods

lessArbitrary :: CostGen a Source #

lessArbitrary :: (Generic a, GLessArbitrary (Rep a)) => CostGen a Source #

Instances
LessArbitrary Bool Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary Char Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary Double Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary Int Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary Integer Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary Scientific Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary a => LessArbitrary [a] Source # 
Instance details

Defined in Test.LessArbitrary

(LessArbitrary k, Ord k) => LessArbitrary (Set k) Source # 
Instance details

Defined in Test.LessArbitrary

LessArbitrary a => LessArbitrary (Vector a) Source # 
Instance details

Defined in Test.LessArbitrary

(LessArbitrary k, LessArbitrary v) => LessArbitrary (k, v) Source # 
Instance details

Defined in Test.LessArbitrary

Methods

lessArbitrary :: CostGen (k, v) Source #

(LessArbitrary k, Eq k, Ord k, Hashable k, LessArbitrary v) => LessArbitrary (HashMap k v) Source # 
Instance details

Defined in Test.LessArbitrary

choose :: Random a => (a, a) -> CostGen a Source #

newtype CostGen a Source #

Constructors

CostGen 

Fields

Instances
Monad CostGen Source # 
Instance details

Defined in Test.LessArbitrary

Methods

(>>=) :: CostGen a -> (a -> CostGen b) -> CostGen b #

(>>) :: CostGen a -> CostGen b -> CostGen b #

return :: a -> CostGen a #

fail :: String -> CostGen a #

Functor CostGen Source # 
Instance details

Defined in Test.LessArbitrary

Methods

fmap :: (a -> b) -> CostGen a -> CostGen b #

(<$) :: a -> CostGen b -> CostGen a #

MonadFix CostGen Source # 
Instance details

Defined in Test.LessArbitrary

Methods

mfix :: (a -> CostGen a) -> CostGen a #

Applicative CostGen Source # 
Instance details

Defined in Test.LessArbitrary

Methods

pure :: a -> CostGen a #

(<*>) :: CostGen (a -> b) -> CostGen a -> CostGen b #

liftA2 :: (a -> b -> c) -> CostGen a -> CostGen b -> CostGen c #

(*>) :: CostGen a -> CostGen b -> CostGen b #

(<*) :: CostGen a -> CostGen b -> CostGen a #

Testable a => Testable (CostGen a) Source # 
Instance details

Defined in Test.LessArbitrary

Methods

property :: CostGen a -> Property #

propertyForAllShrinkShow :: Gen a0 -> (a0 -> [a0]) -> (a0 -> [String]) -> (a0 -> CostGen a) -> Property #

(<$$$>) :: (a -> b) -> CostGen a -> CostGen b Source #

genericLessArbitrary :: (Generic a, GLessArbitrary (Rep a)) => CostGen a Source #

genericLessArbitraryMonoid :: (Generic a, GLessArbitrary (Rep a), Monoid a) => CostGen a Source #

spend :: Cost -> CostGen () Source #

elements :: [a] -> CostGen a Source #

forAll :: CostGen a -> (a -> CostGen b) -> CostGen b Source #