packages feed

wai-test 0.1.3.1 → 1.0.0

raw patch · 2 files changed

+21/−17 lines, 2 filesdep +blaze-builder-conduitdep +conduitdep −blaze-builder-enumeratordep −enumeratordep ~waiPVP ok

version bump matches the API change (PVP)

Dependencies added: blaze-builder-conduit, conduit

Dependencies removed: blaze-builder-enumerator, enumerator

Dependency ranges changed: wai

API changes (from Hackage documentation)

Files

Network/Wai/Test.hs view
@@ -26,14 +26,15 @@ import qualified Data.Map as Map import Data.ByteString (ByteString) import qualified Data.ByteString.Char8 as S8-import Data.Enumerator (joinI, ($$), run_, enumList)-import Data.Enumerator.List (consume)-import Blaze.ByteString.Builder.Enumerator (builderToByteString)+import Data.Conduit.Blaze (builderToByteString) import qualified Data.ByteString.Lazy as L import qualified Data.ByteString.Lazy.Char8 as L8 import qualified Network.HTTP.Types as H import Data.CaseInsensitive (CI) import qualified Data.ByteString as S+import qualified Data.Conduit as C+import qualified Data.Conduit.List as CL+import Data.Monoid (mempty)  type Session = ReaderT Application (StateT ClientState IO) @@ -73,23 +74,26 @@     , remoteHost = error "Network.Wai.Test.defaultRequest{remoteHost}"     , pathInfo = []     , queryString = []+    , requestBody = mempty+    , vault = mempty     }  srequest :: SRequest -> Session SResponse srequest (SRequest req bod) = do     app <- ask-    res <- liftIO $ run_ $ enumList 4 (L.toChunks bod) $$ app req-    sres <- liftIO $ runResponse res-    -- FIXME cookie processing-    return sres+    liftIO $ C.runResourceT $ do+        let req' = req { requestBody = CL.sourceList $ L.toChunks bod }+        res <- app req'+        sres <- runResponse res+        -- FIXME cookie processing+        return sres -runResponse :: Response -> IO SResponse-runResponse res =-    responseEnumerator res go+runResponse :: Response -> C.ResourceT IO SResponse+runResponse res = do+    bss <- body C.$= builderToByteString C.$$ CL.consume+    return $ SResponse s h $ L.fromChunks bss   where-    go s h = do-        bss <- joinI $ builderToByteString $$ consume-        return $ SResponse s h $ L.fromChunks bss+    (s, h, body) = responseSource res  assertBool :: String -> Bool -> Session () assertBool s b = liftIO $ H.assertBool s b
wai-test.cabal view
@@ -1,5 +1,5 @@ name:            wai-test-version:         0.1.3.1+version:         1.0.0 license:         BSD3 license-file:    LICENSE author:          Michael Snoyman <michael@snoyman.com>@@ -14,14 +14,14 @@  library     build-depends:   base                      >= 4        && < 5-                   , wai                       >= 0.4      && < 0.5+                   , wai                       >= 1.0      && < 1.1                    , bytestring                >= 0.9.1.4  && < 0.10                    , blaze-builder             >= 0.2.1.4  && < 0.4                    , transformers              >= 0.2.2    && < 0.3                    , containers                >= 0.2      && < 0.5-                   , enumerator                >= 0.4.8    && < 0.5+                   , conduit+                   , blaze-builder-conduit     >= 0.0      && < 0.1                    , cookie                    >= 0.2      && < 0.4-                   , blaze-builder-enumerator  >= 0.2      && < 0.3                    , HUnit                     >= 1.2      && < 1.3                    , http-types                >= 0.6      && < 0.7                    , case-insensitive          >= 0.2