]> git.maquefel.me Git - brevno-suite/hugo/commitdiff
tpl: Add some more test cases
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 1 May 2025 07:36:03 +0000 (09:36 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 1 May 2025 10:55:11 +0000 (12:55 +0200)
See #13672
See #13668

tpl/tplimpl/templatestore_integration_test.go

index 8d3e5246823afacaad04bef0099418a3bfd8ed04..75ec0376fe962c518bcf9d6475bc71569e29598b 100644 (file)
@@ -1401,14 +1401,61 @@ func TestTemplateLoopBlogVsBlogrollIssue13672(t *testing.T) {
        t.Parallel()
        files := `
 -- hugo.toml --
+-- layouts/blog/_shortcodes/myshortcode.html --
+layouts/blog/_shortcodes/myshortcode.html
+-- layouts/blog/baseof.html --
+blog/baseof.html {{ block "main" . }}{{ end }}
 -- layouts/blog/all.html --
-blog/all.html
+{{ define "main" }}blog/all.html|{{ .Content}}{{ end }}
+-- layouts/blogroll/_shortcodes/myshortcode.html --
+layouts/blogroll/myshortcode.html
+-- layouts/blogroll/baseof.html --
+{{ block "main" . }}blogroll/baseof.html{{ end }}
 -- layouts/blogroll/all.html --
-blogroll/all.html
+{{ define "main" }}blogroll/all.html|{{ .Content}}{{ end }}
+-- content/blog/p1.md --
+---
+title: p1
+---
+{{< myshortcode >}}
 -- content/blogroll/p1.md --
+---
+title: p1
+---
+{{< myshortcode >}}
+`
+
+       b := hugolib.Test(t, files)
+
+       b.AssertFileContent("public/blog/p1/index.html", "blog/baseof.html blog/all.html|layouts/blog/_shortcodes/myshortcode.html")
+       b.AssertFileContent("public/blogroll/p1/index.html", "blogroll/all.html|layouts/blogroll/myshortcode.html")
+}
+
+// See issue #13668.
+func TestPartialPlainTextVsHTML(t *testing.T) {
+       t.Parallel()
+
+       /*
+               Note that in the below, there's no output format named txt,
+               so the isPlainText is fetched from the only output format with that extension.
+       */
+       files := `
+-- hugo.toml --
+-- layouts/_partials/myhtml.html --
+<div>myhtml</div>
+-- layouts/_partials/mytext.txt --
+<div>mytext</div>
+-- layouts/all.html --
+myhtml: {{ partial "myhtml.html" . }}
+mytext: {{ partial "mytext.txt" . }}
+mytexts|safeHTML: {{ partial "mytext.txt" . | safeHTML }}
 `
 
        b := hugolib.Test(t, files)
 
-       b.AssertFileContent("public/blogroll/p1/index.html", "blogroll/all.html")
+       b.AssertFileContent("public/index.html",
+               "myhtml: <div>myhtml</div>",
+               "mytext: &lt;div&gt;mytext&lt;/div&gt;",
+               "mytexts|safeHTML: <div>mytext</div>",
+       )
 }