nanospec-0.2.2: A lightweight implementation of a subset of Hspec's API
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.Hspec

Description

A lightweight implementation of a subset of Hspec's API.

Synopsis

Types

data SpecM a Source #

Instances

Instances details
Applicative SpecM Source # 
Instance details

Defined in Test.Hspec

Methods

pure :: a -> SpecM a

(<*>) :: SpecM (a -> b) -> SpecM a -> SpecM b

liftA2 :: (a -> b -> c) -> SpecM a -> SpecM b -> SpecM c

(*>) :: SpecM a -> SpecM b -> SpecM b

(<*) :: SpecM a -> SpecM b -> SpecM a

Functor SpecM Source # 
Instance details

Defined in Test.Hspec

Methods

fmap :: (a -> b) -> SpecM a -> SpecM b

(<$) :: a -> SpecM b -> SpecM a

Monad SpecM Source # 
Instance details

Defined in Test.Hspec

Methods

(>>=) :: SpecM a -> (a -> SpecM b) -> SpecM b

(>>) :: SpecM a -> SpecM b -> SpecM b

return :: a -> SpecM a

type Spec = SpecM () Source #

Defining a spec

describe :: String -> Spec -> Spec Source #

context :: String -> Spec -> Spec Source #

it :: String -> Expectation -> Spec Source #

Setting expectations

type Expectation = IO () Source #

expect :: String -> Bool -> Expectation Source #

shouldBe :: (Show a, Eq a) => a -> a -> Expectation infix 1 Source #

shouldReturn :: (Show a, Eq a) => IO a -> a -> Expectation infix 1 Source #

Running a spec

hspec :: Spec -> IO () Source #