1 {-# OPTIONS_GHC -fno-warn-missing-signatures #-}
2 module Lib.Tuple2.Test where
6 import Data.Proxy (Proxy(..))
7 import Prelude hiding ((&&), not, (||))
9 import Language.Symantic.Typing
10 import Compiling.Term.Test
18 (==>) = test_compile (Proxy::Proxy Ifaces)
21 tests = testGroup "Tuple2"
22 [ "()" ==> Right (ty @(), (), "()")
23 , "(,) 1 2" ==> Right (ty @(,) :$ ty @Integer :$ ty @Integer, (1,2), "(1, 2)")
24 , "(1,2)" ==> Right (ty @(,) :$ ty @Integer :$ ty @Integer, (1,2), "(1, 2)")
25 , "((1,2), (3,4))" ==> Right
26 ( let t = ty @(,) :$ ty @Integer :$ ty @Integer in ty @(,) :$ t :$ t
28 , "((1, 2), (3, 4))" )