packages feed

redis-0.10: Test/Connection.hs

module Test.Connection where

import Control.Monad.Reader
import Test.HUnit
import Database.Redis.Redis

import Test.Setup

tests = TestList [TestLabel "connect" test_connect,
                  TestLabel "connection state" test_connection_state]

test_connect = TestCase $ do r <- connect localhost defaultPort
                             connected <- isConnected r
                             assertBool "Connection failed for some reason" connected
                             disconnect r
                             connected <- isConnected r
                             assertBool "Disconnected but still in 'connected' state" $ not connected

test_connection_state = TestCase $ testRedis $
    do r <- ask
       liftIO $ do server <- getServer r
                   assertEqual "Wrong server in connection state" (localhost, defaultPort) server
                   select r 0
                   db <- getDatabase r
                   assertEqual "Wrond database number in connection state" 0 db
                   select r 1
                   db <- getDatabase r
                   assertEqual "Wrond database number in connection state" 1 db