on master help sign in
Version bump
commit4684a4ce1899d9636b5998bf7e3a5042d661b565 authorMichael Snoyman <michael@snoyman.com> dateThu 2 Apr 2015, 13:19 (12 years ago) parentc5b21af
3 files changed+30−3
wai-extra/ChangeLog.md+4 wai-extra/Network/Wai/Test.hs+25−2 wai-extra/wai-extra.cabal+1−1
wai-extra/ChangeLog.md+4
@@ -1,3 +1,7 @@
1+## 3.0.6
2+
3+* Add Cookie Handling to Network.Wai.Test [#356](https://github.com/yesodweb/wai/pull/356)
4+
15## 3.0.5
26
37* add functions to extract authentication data from Authorization header [#352](add functions to extract authentication data from Authorization header #352)
wai-extra/Network/Wai/Test.hs+25−2
@@ -63,25 +63,39 @@ import Data.Time.Clock (getCurrentTime)
6363
6464type Session = ReaderT Application (ST.StateT ClientState IO)
6565
66+-- |
67+--
68+-- Since 3.0.6
6669type ClientCookies = Map ByteString Cookie.SetCookie
6770
6871data ClientState = ClientState
6972 { clientCookies :: ClientCookies
7073 }
7174
75+-- |
76+--
77+-- Since 3.0.6
7278getClientCookies :: Session ClientCookies
7379getClientCookies = clientCookies <$> lift ST.get
7480
81+-- |
82+--
83+-- Since 3.0.6
7584modifyClientCookies :: (ClientCookies -> ClientCookies) -> Session ()
7685modifyClientCookies f =
7786 lift (ST.modify (\cs -> cs { clientCookies = f $ clientCookies cs }))
7887
88+-- |
89+--
90+-- Since 3.0.6
7991setClientCookie :: Cookie.SetCookie -> Session ()
8092setClientCookie c =
8193 modifyClientCookies
82− (Map.union
83− (Map.singleton (Cookie.setCookieName c) c))
94+ (Map.insert (Cookie.setCookieName c) c)
8495
96+-- |
97+--
98+-- Since 3.0.6
8599deleteClientCookie :: ByteString -> Session ()
86100deleteClientCookie cookieName =
87101 modifyClientCookies
@@ -280,16 +294,25 @@ assertNoHeader header SResponse{simpleHeaders = h} =
280294 , show s
281295 ]
282296
297+-- |
298+--
299+-- Since 3.0.6
283300assertClientCookieExists :: String -> ByteString -> Session ()
284301assertClientCookieExists s cookieName = do
285302 cookies <- getClientCookies
286303 assertBool s $ Map.member cookieName cookies
287304
305+-- |
306+--
307+-- Since 3.0.6
288308assertNoClientCookieExists :: String -> ByteString -> Session ()
289309assertNoClientCookieExists s cookieName = do
290310 cookies <- getClientCookies
291311 assertBool s $ not $ Map.member cookieName cookies
292312
313+-- |
314+--
315+-- Since 3.0.6
293316assertClientCookieValue :: String -> ByteString -> ByteString -> Session ()
294317assertClientCookieValue s cookieName cookieValue = do
295318 cookies <- getClientCookies
wai-extra/wai-extra.cabal+1−1
@@ -1,5 +1,5 @@
11Name: wai-extra
2−Version: 3.0.5
2+Version: 3.0.6
33Synopsis: Provides some basic WAI handlers and middleware.
44description:
55 Provides basic WAI handler and middleware functionality: