diff options
Diffstat (limited to 'tests/HomeTest.hs')
| -rw-r--r-- | tests/HomeTest.hs | 46 | 
1 files changed, 30 insertions, 16 deletions
| diff --git a/tests/HomeTest.hs b/tests/HomeTest.hs index 17c9e6d..fbe52ac 100644 --- a/tests/HomeTest.hs +++ b/tests/HomeTest.hs @@ -1,24 +1,38 @@ +{-# LANGUAGE OverloadedStrings #-}  module HomeTest      ( homeSpecs      ) where -import Import -import Yesod.Test +import TestImport +import qualified Data.List as L -homeSpecs :: Specs +homeSpecs :: Spec  homeSpecs = -  describe "These are some example tests" $ -    it "loads the index and checks it looks right" $ do -      get_ "/" -      statusIs 200 -      htmlAllContain "h1" "Hello" +    ydescribe "These are some example tests" $ do -      post "/" $ do -        addNonce -        fileByLabel "Choose a file" "tests/main.hs" "text/plain" -- talk about self-reference -        byLabel "What's on the file?" "Some Content" +        yit "loads the index and checks it looks right" $ do +            get HomeR +            statusIs 200 +            htmlAllContain "h1" "Hello" -      statusIs 200 -      htmlCount ".message" 1 -      htmlAllContain ".message" "Some Content" -      htmlAllContain ".message" "text/plain" +            request $ do +                setMethod "POST" +                setUrl HomeR +                addNonce +                fileByLabel "Choose a file" "tests/main.hs" "text/plain" -- talk about self-reference +                byLabel "What's on the file?" "Some Content" + +            statusIs 200 +            printBody +            htmlCount ".message" 1 +            htmlAllContain ".message" "Some Content" +            htmlAllContain ".message" "text/plain" + +        -- This is a simple example of using a database access in a test.  The +        -- test will succeed for a fresh scaffolded site with an empty database, +        -- but will fail on an existing database with a non-empty user table. +        yit "leaves the user table empty" $ do +            get HomeR +            statusIs 200 +            users <- runDB $ selectList ([] :: [Filter User]) [] +            assertEqual "user table empty" 0 $ L.length users | 
