summaryrefslogtreecommitdiffstats
path: root/hugolib/params_test.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2024-01-29 10:02:24 +0100
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2024-01-30 20:12:03 +0100
commitf31a6db797c9251a362ef9f8ad4c03fb608b5ac0 (patch)
treea47dbb5764cfc96c49882e13a7da279dc43b1eb5 /hugolib/params_test.go
parentec22bb31a89883db5ca95404cda4f74344fd3762 (diff)
Add path, kind and lang to content front matter
Note that none of these can be set via cascade (you will get an error) Fixes #11544
Diffstat (limited to 'hugolib/params_test.go')
-rw-r--r--hugolib/params_test.go109
1 files changed, 108 insertions, 1 deletions
diff --git a/hugolib/params_test.go b/hugolib/params_test.go
index 32b4bd7c3..f80f14035 100644
--- a/hugolib/params_test.go
+++ b/hugolib/params_test.go
@@ -13,7 +13,11 @@
package hugolib
-import "testing"
+import (
+ "testing"
+
+ qt "github.com/frankban/quicktest"
+)
func TestFrontMatterParamsInItsOwnSection(t *testing.T) {
t.Parallel()
@@ -52,3 +56,106 @@ Summary: {{ .Summary }}|
"Summary: frontmatter.summary|",
)
}
+
+func TestFrontMatterParamsKindPath(t *testing.T) {
+ t.Parallel()
+
+ files := `
+-- hugo.toml --
+baseURL = "https://example.org/"
+disableKinds = ["taxonomy", "term"]
+
+-- content/p1.md --
+---
+title: "P1"
+date: 2019-08-07
+path: "/a/b/c"
+slug: "s1"
+---
+-- content/mysection.md --
+---
+title: "My Section"
+kind: "section"
+date: 2022-08-07
+path: "/a/b"
+---
+-- layouts/index.html --
+RegularPages: {{ range site.RegularPages }}{{ .Path }}|{{ .RelPermalink }}|{{ .Title }}|{{ .Date.Format "2006-02-01" }}| Slug: {{ .Params.slug }}|{{ end }}$
+Sections: {{ range site.Sections }}{{ .Path }}|{{ .RelPermalink }}|{{ .Title }}|{{ .Date.Format "2006-02-01" }}| Slug: {{ .Params.slug }}|{{ end }}$
+{{ $ab := site.GetPage "a/b" }}
+a/b pages: {{ range $ab.RegularPages }}{{ .Path }}|{{ .RelPermalink }}|{{ end }}$
+`
+
+ b := Test(t, files)
+
+ b.AssertFileContent("public/index.html",
+ "RegularPages: /a/b/c|/a/b/s1/|P1|2019-07-08| Slug: s1|$",
+ "Sections: /a|/a/|As",
+ "a/b pages: /a/b/c|/a/b/s1/|$",
+ )
+}
+
+func TestFrontMatterParamsLang(t *testing.T) {
+ t.Parallel()
+
+ files := `
+-- hugo.toml --
+baseURL = "https://example.org/"
+disableKinds = ["taxonomy", "term"]
+defaultContentLanguage = "en"
+defaultContentLanguageInSubdir = true
+[languages]
+[languages.en]
+weight = 1
+[languages.nn]
+weight = 2
+-- content/p1.md --
+---
+title: "P1 nn"
+lang: "nn"
+---
+-- content/p2.md --
+---
+title: "P2"
+---
+-- layouts/index.html --
+RegularPages: {{ range site.RegularPages }}{{ .Path }}|{{ .RelPermalink }}|{{ .Title }}|{{ end }}$
+
+`
+
+ b := Test(t, files)
+
+ b.AssertFileContent("public/en/index.html",
+ "RegularPages: /p2|/en/p2/|P2|$",
+ )
+ b.AssertFileContent("public/nn/index.html",
+ "RegularPages: /p1|/nn/p1/|P1 nn|$",
+ )
+}
+
+func TestFrontMatterParamsLangNoCascade(t *testing.T) {
+ t.Parallel()
+
+ files := `
+-- hugo.toml --
+baseURL = "https://example.org/"
+disableKinds = ["taxonomy", "term"]
+defaultContentLanguage = "en"
+defaultContentLanguageInSubdir = true
+[languages]
+[languages.en]
+weight = 1
+[languages.nn]
+weight = 2
+-- content/_index.md --
++++
+[[cascade]]
+background = 'yosemite.jpg'
+lang = 'nn'
++++
+
+`
+
+ b, err := TestE(t, files)
+ b.Assert(err, qt.IsNotNil)
+}