summaryrefslogtreecommitdiff
path: root/Haskell-book/17/ListApplicative/test/Spec.hs
blob: ecd8148127bcd51c4345cd15ca22d9b9fa1a8699 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
module Main where

import Control.Applicative
import Data.Monoid
import Test.QuickCheck.Checkers
import Test.QuickCheck.Classes
import List
import ZipList
import Validation (Validation(..))

main :: IO ()
main = do
    quickBatch $ applicative (Cons (Sum (1 :: Integer), Sum (2 :: Integer), Sum (3 :: Integer)) Nil)
    quickBatch $ monoid (ZipList' $ Cons (Sum (1 :: Integer), Sum (2 :: Integer), Sum (3 :: Integer)) Nil)
    quickBatch $ applicative (ZipList' $ Cons (Sum (1 :: Integer), Sum (2 :: Integer), Sum (3 :: Integer)) Nil)
    quickBatch $ applicative ((Success (Sum 1, Sum 2, Sum 3)) :: Validation String (Sum Integer, Sum Integer, Sum Integer))