import Control.Monad.Trans.Reader import Exercises import Test.Hspec main :: IO () main = hspec $ do describe "rDec" $ do it "returns a value decremented by one" $ do runReader rDec 1 `shouldBe` 0 it "decrements all elements of a list" $ do (fmap (runReader rDec) [1..10]) `shouldBe` [0,1,2,3,4,5,6,7,8,9] describe "rShow" $ do it "shows a number" $ do runReader rShow 1 `shouldBe` "1" it "shows a list" $ do (fmap (runReader rShow) [1..10]) `shouldBe` ["1","2","3","4","5","6","7","8","9","10"]