method-0.3.0.0: rebindable methods for improving testability
LicenseBSD-3
Maintainerautotaker@gmail.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Test.Method.Monitor.Internal

Description

 
Synopsis

Documentation

newtype Tick Source #

Tick represents call identifier

Constructors

Tick 

Fields

Instances

Instances details
Enum Tick Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

succ :: Tick -> Tick #

pred :: Tick -> Tick #

toEnum :: Int -> Tick #

fromEnum :: Tick -> Int #

enumFrom :: Tick -> [Tick] #

enumFromThen :: Tick -> Tick -> [Tick] #

enumFromTo :: Tick -> Tick -> [Tick] #

enumFromThenTo :: Tick -> Tick -> Tick -> [Tick] #

Eq Tick Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

(==) :: Tick -> Tick -> Bool #

(/=) :: Tick -> Tick -> Bool #

Ord Tick Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

compare :: Tick -> Tick -> Ordering #

(<) :: Tick -> Tick -> Bool #

(<=) :: Tick -> Tick -> Bool #

(>) :: Tick -> Tick -> Bool #

(>=) :: Tick -> Tick -> Bool #

max :: Tick -> Tick -> Tick #

min :: Tick -> Tick -> Tick #

Show Tick Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

showsPrec :: Int -> Tick -> ShowS #

show :: Tick -> String #

showList :: [Tick] -> ShowS #

data Event args ret Source #

Event args ret is a function call event

Constructors

Enter 

Fields

Leave 

Instances

Instances details
(Eq args, Eq ret) => Eq (Event args ret) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

(==) :: Event args ret -> Event args ret -> Bool #

(/=) :: Event args ret -> Event args ret -> Bool #

(Ord args, Ord ret) => Ord (Event args ret) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

compare :: Event args ret -> Event args ret -> Ordering #

(<) :: Event args ret -> Event args ret -> Bool #

(<=) :: Event args ret -> Event args ret -> Bool #

(>) :: Event args ret -> Event args ret -> Bool #

(>=) :: Event args ret -> Event args ret -> Bool #

max :: Event args ret -> Event args ret -> Event args ret #

min :: Event args ret -> Event args ret -> Event args ret #

(Show args, Show ret) => Show (Event args ret) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

showsPrec :: Int -> Event args ret -> ShowS #

show :: Event args ret -> String #

showList :: [Event args ret] -> ShowS #

newtype ShowType a Source #

newtype to implement show instance which shows its type.

Constructors

ShowType a 

Instances

Instances details
Eq a => Eq (ShowType a) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

(==) :: ShowType a -> ShowType a -> Bool #

(/=) :: ShowType a -> ShowType a -> Bool #

Ord a => Ord (ShowType a) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

compare :: ShowType a -> ShowType a -> Ordering #

(<) :: ShowType a -> ShowType a -> Bool #

(<=) :: ShowType a -> ShowType a -> Bool #

(>) :: ShowType a -> ShowType a -> Bool #

(>=) :: ShowType a -> ShowType a -> Bool #

max :: ShowType a -> ShowType a -> ShowType a #

min :: ShowType a -> ShowType a -> ShowType a #

Typeable a => Show (ShowType a) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

showsPrec :: Int -> ShowType a -> ShowS #

show :: ShowType a -> String #

showList :: [ShowType a] -> ShowS #

newtype EqUptoShow a Source #

newtype to compare values via show

Constructors

EqUptoShow a 

Instances

Instances details
Show a => Eq (EqUptoShow a) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Methods

(==) :: EqUptoShow a -> EqUptoShow a -> Bool #

(/=) :: EqUptoShow a -> EqUptoShow a -> Bool #

Show a => Ord (EqUptoShow a) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

Show a => Show (EqUptoShow a) Source # 
Instance details

Defined in Test.Method.Monitor.Internal

data Monitor args ret Source #

Monitor arg ret is an event monitor of methods, which logs method calls.

Constructors

Monitor 

Fields

newMonitor :: IO (Monitor args ret) Source #

Generate new instance of Monitor

tick :: MonadIO m => Monitor args ret -> m Tick Source #

Increment the clock and return the current tick.

logEvent :: MonadIO m => Monitor args ret -> Event args ret -> m () Source #

logs an event