packages feed

yesod-core 1.6.25.1 → 1.6.26.0

raw patch · 5 files changed

+48/−3 lines, 5 filesdep ~wai-extra

Dependency ranges changed: wai-extra

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ # ChangeLog for yesod-core +## 1.6.26.0++* Always apply jsAttributes to julius script blocks of body [#1836](https://github.com/yesodweb/yesod/pull/1836)+ ## 1.6.25.1  * Export the options that were created in 1.6.25.0 [#1825](https://github.com/yesodweb/yesod/pull/1825)
src/Yesod/Core/Class/Yesod.hs view
@@ -595,7 +595,7 @@                 $maybe s <- jsLoc                     <script src="#{s}" *{jsAttrs}>                 $nothing-                    <script>^{jelper j}+                    <script *{jsAttrs}>^{jelper j}         |]          headAll = [hamlet|
test/YesodCoreTest.hs view
@@ -17,6 +17,7 @@ import YesodCoreTest.Breadcrumb import qualified YesodCoreTest.WaiSubsite as WaiSubsite import qualified YesodCoreTest.Redirect as Redirect+import qualified YesodCoreTest.JsAttributes as JsAttributes import qualified YesodCoreTest.JsLoader as JsLoader import qualified YesodCoreTest.RequestBodySize as RequestBodySize import qualified YesodCoreTest.Json as Json@@ -51,6 +52,7 @@       parameterizedSiteTest       WaiSubsite.specs       Redirect.specs+      JsAttributes.specs       JsLoader.specs       RequestBodySize.specs       Json.specs
+ test/YesodCoreTest/JsAttributes.hs view
@@ -0,0 +1,37 @@+{-# LANGUAGE QuasiQuotes, TypeFamilies, TemplateHaskell, MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE FlexibleInstances #-}+module YesodCoreTest.JsAttributes+    ( specs+      -- To avoid unused warning+    , Widget+    , resourcesApp+    ) where++import Test.Hspec++import Yesod.Core+import Network.Wai.Test++data App = App+mkYesod "App" [parseRoutes|+/ HeadR GET+|]+instance Yesod App where+    jsAttributes _ = [("attr0", "a")]++getHeadR :: Handler Html+getHeadR = defaultLayout $ do+    addScriptRemote "load.js"+    toWidget [julius|/*body*/|]+    toWidgetHead [julius|/*head*/|]++specs :: Spec+specs = describe "Test.JsAttributes" $ do+    it "script in body gets attributes" $ runner App $ do+      res <- request defaultRequest+      assertBody "<!DOCTYPE html>\n<html><head><title></title><script>/*head*/</script></head><body><script src=\"load.js\"></script><script attr0=\"a\">/*body*/</script></body></html>" res++runner :: YesodDispatch master => master -> Session () -> IO ()+runner app f = toWaiApp app >>= runSession f+
yesod-core.cabal view
@@ -1,5 +1,5 @@ name:            yesod-core-version:         1.6.25.1+version:         1.6.26.0 license:         MIT license-file:    LICENSE author:          Michael Snoyman <michael@snoyman.com>@@ -38,7 +38,7 @@                    , conduit               >= 1.3                    , conduit-extra                    , containers            >= 0.2-                   , cookie                >= 0.4.3    && < 0.5+                   , cookie                >= 0.4.3    && < 0.6                    , deepseq               >= 1.3                    , entropy                    , fast-logger           >= 2.2@@ -142,6 +142,7 @@      other-modules: YesodCoreTest                    YesodCoreTest.Auth+                   YesodCoreTest.Breadcrumb                    YesodCoreTest.Cache                    YesodCoreTest.CleanPath                    YesodCoreTest.Header@@ -150,6 +151,7 @@                    YesodCoreTest.ErrorHandling.CustomApp                    YesodCoreTest.Exceptions                    YesodCoreTest.InternalRequest+                   YesodCoreTest.JsAttributes                    YesodCoreTest.JsLoader                    YesodCoreTest.JsLoaderSites.Bottom                    YesodCoreTest.Json