websockets-0.11.0.0: tests/haskell/Network/WebSockets/Extensions/Tests.hs
--------------------------------------------------------------------------------
{-# LANGUAGE OverloadedStrings #-}
module Network.WebSockets.Extensions.Tests
( tests
) where
--------------------------------------------------------------------------------
import Network.WebSockets.Extensions
import Test.Framework (Test, testGroup)
import Test.Framework.Providers.HUnit (testCase)
import Test.HUnit ((@?=))
--------------------------------------------------------------------------------
tests :: Test
tests = testGroup "Network.WebSockets.Extensions.Tests"
[ testCase "parseExtensionDescriptions 01" $ do
parseExtensionDescriptions "permessage-deflate" @?= Right
[ ExtensionDescription "permessage-deflate" [] ]
, testCase "parseExtensionDescriptions 02" $ do
parseExtensionDescriptions "permessage-deflate; client_max_window_bits; server_max_window_bits=10" @?= Right
[ ExtensionDescription "permessage-deflate"
[ ("client_max_window_bits", Nothing)
, ("server_max_window_bits", Just "10")
]
]
, testCase "parseExtensionDescriptions 03" $ do
parseExtensionDescriptions "permessage-deflate; client_max_window_bits=15; server_max_window_bits=10, permessage-deflate; client_max_window_bits,permessage-deflate; client_max_window_bits=15; client_max_window_bits=10" @?= Right
[ ExtensionDescription "permessage-deflate"
[ ("client_max_window_bits", Just "15")
, ("server_max_window_bits", Just "10")
]
, ExtensionDescription "permessage-deflate"
[ ("client_max_window_bits", Nothing)
]
, ExtensionDescription "permessage-deflate"
[ ("client_max_window_bits", Just "15")
, ("client_max_window_bits", Just "10")
]
]
]