Skip to content
Open
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions test/Course/StateSpec.hs
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ spec = do
describe "Monad" $ do
it "(=<<)" $
runState ((const $ put 2) =<< put 1) 0 `shouldBe` ((),2)
it "" $
runState ((\a -> State (\s -> (a + s, 10 + s))) =<< State (\s -> (s * 2, 4 + s))) 2 `shouldBe` (10, 16)
it "(>>=)" $
let modify f = State (\s -> ((), f s))
in runState (modify (+1) >>= \() -> modify (*2)) 7 `shouldBe` ((),16)
Expand Down