summaryrefslogtreecommitdiff
path: root/Haskell-book/21/instances/test/Spec.hs
blob: 934b120d1a98fc8017a7a72bd800b83a77274971 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import Lib
import Data.Monoid
import Test.QuickCheck
import Test.QuickCheck.Checkers
import Test.QuickCheck.Classes
import SkiFree
import Tree

main :: IO ()
main = do
    sample' (arbitrary :: Gen (S [] Int))

    quickBatch $ traversable $ (Identity (['a'], ['b'], ['c']))

    quickBatch $ applicative $ (undefined :: Constant (String, String, String) (String, String, String))
    quickBatch $ traversable $ (undefined :: Constant (String, String, String) (String, String, String))

    quickBatch $ traversable $ (undefined :: Optional (String, String, String))

    quickBatch $ traversable $ (undefined :: List (String, String, String))

    quickBatch $ traversable $ (undefined :: Three (String, String, String)
                                                   (String, String, String)
                                                   (String, String, String))
    quickBatch $ traversable $ (undefined :: Pair (String, String, String)
                                                  (String, String, String))
    quickBatch $ traversable $ (undefined :: Big (String, String, String)
                                                 (String, String, String))
    quickBatch $ traversable $ (undefined :: Bigger (String, String, String)
                                                    (String, String, String))

    quickBatch $ functor $ S [("a", "q", "y")] ("a", "b", "c")
    quickBatch $ traversable $ S [("a", "q", "y")] ("a", "b", "c")

    quickBatch $ traversable $ Leaf ("a", "q", "y")