webgear-server-0.1.0: test/Unit/Trait/Path.hs
-- |
-- Copyright : (c) Raghu Kaippully, 2020
-- License : MPL-2.0
-- Maintainer : rkaippully@gmail.com
--
module Unit.Trait.Path
( tests
) where
import Network.Wai (defaultRequest, pathInfo)
import Test.Tasty (TestTree, testGroup)
import Test.Tasty.HUnit (assertFailure, testCase, (@?=))
import WebGear.Trait
import WebGear.Trait.Path
testMissingPathVar :: TestTree
testMissingPathVar = testCase "PathVar match: missing variable" $ do
let req = defaultRequest { pathInfo = [] }
check @(PathVar "tag" Int) req >>= \case
CheckSuccess _ _ -> assertFailure "unexpected success"
CheckFail e -> e @?= PathVarNotFound
tests :: TestTree
tests = testGroup "Trait.Path" [ testMissingPathVar ]