sydtest-0.0.0.0: An advanced modern testing framework for Haskell with good defaults and advanced testing features.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.Syd.SpecDef

Description

This module defines all the functions you will use to define your test suite.

Documentation

data TDef v Source #

Constructors

TDef 

Instances

Instances details
Functor TDef Source # 
Instance details

Defined in Test.Syd.SpecDef

Methods

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

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

Foldable TDef Source # 
Instance details

Defined in Test.Syd.SpecDef

Methods

fold :: Monoid m => TDef m -> m #

foldMap :: Monoid m => (a -> m) -> TDef a -> m #

foldMap' :: Monoid m => (a -> m) -> TDef a -> m #

foldr :: (a -> b -> b) -> b -> TDef a -> b #

foldr' :: (a -> b -> b) -> b -> TDef a -> b #

foldl :: (b -> a -> b) -> b -> TDef a -> b #

foldl' :: (b -> a -> b) -> b -> TDef a -> b #

foldr1 :: (a -> a -> a) -> TDef a -> a #

foldl1 :: (a -> a -> a) -> TDef a -> a #

toList :: TDef a -> [a] #

null :: TDef a -> Bool #

length :: TDef a -> Int #

elem :: Eq a => a -> TDef a -> Bool #

maximum :: Ord a => TDef a -> a #

minimum :: Ord a => TDef a -> a #

sum :: Num a => TDef a -> a #

product :: Num a => TDef a -> a #

Traversable TDef Source # 
Instance details

Defined in Test.Syd.SpecDef

Methods

traverse :: Applicative f => (a -> f b) -> TDef a -> f (TDef b) #

sequenceA :: Applicative f => TDef (f a) -> f (TDef a) #

mapM :: Monad m => (a -> m b) -> TDef a -> m (TDef b) #

sequence :: Monad m => TDef (m a) -> m (TDef a) #

type TestForest a c = SpecDefForest a c () Source #

type TestTree a c = SpecDefTree a c () Source #

type SpecDefForest (a :: [Type]) c e = [SpecDefTree a c e] Source #

data SpecDefTree (a :: [Type]) c e where Source #

Constructors

DefSpecifyNode :: Text -> TDef (((HList a -> c -> IO ()) -> IO ()) -> IO TestRunResult) -> e -> SpecDefTree a c e 
DefPendingNode :: Text -> Maybe Text -> SpecDefTree a c e 
DefDescribeNode :: Text -> SpecDefForest a c e -> SpecDefTree a c e 
DefWrapNode :: (IO () -> IO ()) -> SpecDefForest a c e -> SpecDefTree a c e 
DefBeforeAllNode :: IO a -> SpecDefForest (a ': l) c e -> SpecDefTree l c e 
DefAroundAllNode :: ((a -> IO ()) -> IO ()) -> SpecDefForest (a ': l) c e -> SpecDefTree l c e 
DefAroundAllWithNode :: ((b -> IO ()) -> a -> IO ()) -> SpecDefForest (b ': (a ': l)) c e -> SpecDefTree (a ': l) c e 
DefAfterAllNode :: (HList a -> IO ()) -> SpecDefForest a c e -> SpecDefTree a c e 
DefParallelismNode :: Parallelism -> SpecDefForest a c e -> SpecDefTree a c e 
DefRandomisationNode :: ExecutionOrderRandomisation -> SpecDefForest a c e -> SpecDefTree a c e 

Instances

Instances details
Functor (SpecDefTree a c) Source # 
Instance details

Defined in Test.Syd.SpecDef

Methods

fmap :: (a0 -> b) -> SpecDefTree a c a0 -> SpecDefTree a c b #

(<$) :: a0 -> SpecDefTree a c b -> SpecDefTree a c a0 #

Foldable (SpecDefTree a c) Source # 
Instance details

Defined in Test.Syd.SpecDef

Methods

fold :: Monoid m => SpecDefTree a c m -> m #

foldMap :: Monoid m => (a0 -> m) -> SpecDefTree a c a0 -> m #

foldMap' :: Monoid m => (a0 -> m) -> SpecDefTree a c a0 -> m #

foldr :: (a0 -> b -> b) -> b -> SpecDefTree a c a0 -> b #

foldr' :: (a0 -> b -> b) -> b -> SpecDefTree a c a0 -> b #

foldl :: (b -> a0 -> b) -> b -> SpecDefTree a c a0 -> b #

foldl' :: (b -> a0 -> b) -> b -> SpecDefTree a c a0 -> b #

foldr1 :: (a0 -> a0 -> a0) -> SpecDefTree a c a0 -> a0 #

foldl1 :: (a0 -> a0 -> a0) -> SpecDefTree a c a0 -> a0 #

toList :: SpecDefTree a c a0 -> [a0] #

null :: SpecDefTree a c a0 -> Bool #

length :: SpecDefTree a c a0 -> Int #

elem :: Eq a0 => a0 -> SpecDefTree a c a0 -> Bool #

maximum :: Ord a0 => SpecDefTree a c a0 -> a0 #

minimum :: Ord a0 => SpecDefTree a c a0 -> a0 #

sum :: Num a0 => SpecDefTree a c a0 -> a0 #

product :: Num a0 => SpecDefTree a c a0 -> a0 #

Traversable (SpecDefTree a c) Source # 
Instance details

Defined in Test.Syd.SpecDef

Methods

traverse :: Applicative f => (a0 -> f b) -> SpecDefTree a c a0 -> f (SpecDefTree a c b) #

sequenceA :: Applicative f => SpecDefTree a c (f a0) -> f (SpecDefTree a c a0) #

mapM :: Monad m => (a0 -> m b) -> SpecDefTree a c a0 -> m (SpecDefTree a c b) #

sequence :: Monad m => SpecDefTree a c (m a0) -> m (SpecDefTree a c a0) #

MonadWriter (TestForest a b) (TestDefM a b) Source # 
Instance details

Defined in Test.Syd.Def.TestDefM

Methods

writer :: (a0, TestForest a b) -> TestDefM a b a0 #

tell :: TestForest a b -> TestDefM a b () #

listen :: TestDefM a b a0 -> TestDefM a b (a0, TestForest a b) #

pass :: TestDefM a b (a0, TestForest a b -> TestForest a b) -> TestDefM a b a0 #