packages feed

yesod-transloadit 0.5.0.0 → 0.6.0.0

raw patch · 3 files changed

+24/−20 lines, 3 filesdep +network-uriPVP ok

version bump matches the API change (PVP)

Dependencies added: network-uri

API changes (from Hackage documentation)

- Yesod.Transloadit: sslUrl :: Lens' StepResult Text
+ Yesod.Transloadit: sslUrl :: Lens' StepResult (Maybe URI)
- Yesod.Transloadit: url :: Lens' StepResult Text
+ Yesod.Transloadit: url :: Lens' StepResult (Maybe URI)

Files

src/Yesod/Transloadit.hs view
@@ -51,6 +51,7 @@ import           Data.Text import           Data.Text.Encoding import           Data.Time+import           Network.URI import           Text.Julius import           Yesod                         hiding (Key) import           Yesod.Form.Jquery             (YesodJquery (..))@@ -89,8 +90,8 @@   _extension :: Text,   _mime      :: Maybe Type,   _field     :: Text,-  _url       :: Text,-  _sslUrl    :: Text+  _url       :: Maybe URI,+  _sslUrl    :: Maybe URI } deriving (Show)  $(makeLenses ''StepResult)@@ -176,11 +177,12 @@                  <*> v "ext"                  <*> (parseMIMEType <$> v "mime")                  <*> v "field"-                 <*> v "url"-                 <*> v "ssl_url"+                 <*> (toURI <$> v "url")+                 <*> (toURI <$> v "ssl_url")   where v s = case HM.lookup s hm of           (Just (String t)) -> Just t           _ -> Nothing+        toURI = parseURI . unpack  -- | Helper method to pull the nth @StepResult@ for a given key from the Transloadit response nthStepResult :: AsValue s => Int -> Text -> Maybe s -> Maybe StepResult
test/Tests.hs view
@@ -11,6 +11,7 @@ import           Data.Map import           Data.Maybe import           Data.Text+import           Network.URI import           System.Locale import           Test.Hspec import           Yesod             hiding (Key, get)@@ -61,7 +62,7 @@ sampleDict :: Map Text (Map Text [Map Text Text]) sampleDict = fromList [("results", results)]              where results = fromList [("foo", stepResults)]-                   stepResults = [fromList [("id","<id>"), ("name", "n"), ("basename", "b"), ("ext", "e"), ("mime", "text/plain"), ("field", "f"), ("url", "u"), ("ssl_url", "<ssl_url>")]]+                   stepResults = [fromList [("id","<id>"), ("name", "n"), ("basename", "b"), ("ext", "e"), ("mime", "text/plain"), ("field", "f"), ("url", "http://foo.com"), ("ssl_url", "https://foo.com")]]  sampleResult = fromJust $ nthStepResult 0 "foo" (return $ encode sampleDict) @@ -81,13 +82,13 @@       get HomeR       bodyContains "<script src=\"https://assets.transloadit.com/js/jquery.transloadit2-v2-latest.js\"></script>"   ydescribe "Response parsing" $ do-    yit "grabs ssl_url" $ assertEqual "ssl_url" (sampleResult ^. sslUrl) ("<ssl_url>" :: Text)+    yit "grabs ssl_url" $ assertEqual "ssl_url" (sampleResult ^. sslUrl) (parseURI "https://foo.com")     yit "grabs id" $ assertEqual "id" (sampleResult ^. resultId) ("<id>" :: Text)     yit "grabs name" $ assertEqual "name" (sampleResult ^. name) ("n" :: Text)     yit "grabs basename" $ assertEqual "basename" (sampleResult ^. baseName) ("b" :: Text)     yit "grabs extension" $ assertEqual "ext" (sampleResult ^. extension) ("e" :: Text)     yit "grabs mime" $ assertEqual "mime" (sampleResult ^. mime) (parseMIMEType "text/plain")     yit "grabs field" $ assertEqual "field" (sampleResult ^. field) ("f" :: Text)-    yit "grabs url" $ assertEqual "url" (sampleResult ^. url) ("u" :: Text)+    yit "grabs url" $ assertEqual "url" (sampleResult ^. url) (parseURI "http://foo.com")  main = hspec formGenSpecs
yesod-transloadit.cabal view
@@ -1,5 +1,5 @@ name:                yesod-transloadit-version:             0.5.0.0+version:             0.6.0.0 synopsis:            Transloadit support for Yesod description:         Drop in Transloadit capabilites for Yesod web apps license:             MIT@@ -36,6 +36,7 @@                        , lens-aeson                        , unordered-containers                        , mime+                       , network-uri    hs-source-dirs:      src   default-language:    Haskell2010@@ -45,17 +46,17 @@   type:                exitcode-stdio-1.0   main-is:             Tests.hs   hs-source-dirs:      test--  build-depends:       base,-                       yesod-transloadit,-                       yesod-test,-                       hspec,-                       yesod,-                       yesod-form,-                       old-locale,-                       text,-                       aeson,-                       containers,-                       mime+  build-depends:       base+                       , yesod-transloadit+                       , yesod-test+                       , hspec+                       , yesod+                       , yesod-form+                       , old-locale+                       , text+                       , aeson+                       , containers+                       , mime+                       , network-uri    default-language:    Haskell2010