packages feed

essence-of-live-coding-0.2.4: test/Cell.hs

{-# LANGUAGE ScopedTypeVariables #-}
module Cell where

-- base
import Prelude hiding (id)
import Control.Category
import Data.Functor.Identity

-- transformers
import Control.Monad.Trans.Identity

-- test-framework
import Test.Framework

-- test-framework-quickcheck2
import Test.Framework.Providers.QuickCheck2

-- QuickCheck
import Test.QuickCheck

-- essence-of-live-coding
import LiveCoding

import qualified Cell.Util
import qualified Cell.Monad.Trans

test = testGroup "Cell"
  [ testProperty "steps produces outputs"
    $ \(inputs :: [Int]) -> inputs === fst (runIdentity $ steps (id :: Cell Identity Int Int) inputs)
  , Cell.Util.test
  , Cell.Monad.Trans.test
  ]