symantic-lib-0.0.2.20170703: Language/Symantic/Lib/Functor/Test.hs
{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
module Lib.Functor.Test where
import Test.Tasty
import Data.Proxy (Proxy(..))
import Prelude hiding ((&&), not, (||))
import Language.Symantic ()
import Language.Symantic.Lib
import Compiling.Test
type SS =
[ Proxy (->)
, Proxy Bool
, Proxy Functor
, Proxy Integer
, Proxy Maybe
]
(==>) = readTe @() @SS
tests :: TestTree
tests = testGroup "Functor"
[ "fmap not (Just True)" ==> Right (tyMaybe tyBool, Just False, "fmap (\\x0 -> not x0) (Just True)")
, "not `fmap` Just True" ==> Right (tyMaybe tyBool, Just False, "fmap (\\x0 -> not x0) (Just True)")
, "not <$> Just True" ==> Right (tyMaybe tyBool, Just False, "(\\x0 -> not x0) <$> Just True")
, "False <$ Just True" ==> Right (tyMaybe tyBool, Just False, "False <$ Just True")
]