yesod-auth-basic-0.1.0.0: test/YesodAuthHttpBasicSpec.hs
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
module YesodAuthHttpBasicSpec where
import Data.Monoid ((<>))
import Test.Hspec
import Yesod hiding (get)
import Yesod.Test
-- TODO create real tests
spec :: SpecWith ()
spec = describe "Yesod HTTP Basic Authentication" $
yesodSpec app $
ydescribe "Yesod HTTP Basic Authentication" $
ydescribe "tests1" $ do
yit "Has Basic Auth" $ do
-- addRequestHeader (hUserAgent, "Chrome/41.0.2228.0")
get $ LiteAppRoute []
statusIs 200
yit "Denies Failed Basic Auth" $ do
get $ LiteAppRoute []
statusIs 200
-- statusIs 403
instance RenderMessage LiteApp FormMessage where
renderMessage _ _ = defaultFormMessage
app :: LiteApp
app = liteApp $
dispatchTo $ do
mfoo <- lookupGetParam "foo"
case mfoo of
Nothing -> return "Hello world!"
Just foo -> return $ "foo=" <> foo