summaryrefslogtreecommitdiffstats
path: root/hugolib/site_sections_test.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2019-05-01 17:51:03 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2019-05-01 19:34:28 +0200
commitbcbed4ebdaf55b67abc521d69bba456c041a7e7d (patch)
treec99e705bb31267b26ef8206144526af7fffb8318 /hugolib/site_sections_test.go
parent009076e5ee88fc46c95a9afd34f82f9386aa282a (diff)
hugolib: Fix PrevInSection/NextInSection for nested sections
This was broken in Hugo 0.55.0. Fixes #5883
Diffstat (limited to 'hugolib/site_sections_test.go')
-rw-r--r--hugolib/site_sections_test.go45
1 files changed, 45 insertions, 0 deletions
diff --git a/hugolib/site_sections_test.go b/hugolib/site_sections_test.go
index 3adfb2b57..199947c31 100644
--- a/hugolib/site_sections_test.go
+++ b/hugolib/site_sections_test.go
@@ -330,3 +330,48 @@ PAG|{{ .Title }}|{{ $sect.InSection . }}
th.assertFileContent("public/l1/l2/page/2/index.html", "L1/l2-IsActive: true", "PAG|T2_3|true")
}
+
+func TestNextInSectionNested(t *testing.T) {
+ t.Parallel()
+
+ pageContent := `---
+title: "The Page"
+weight: %d
+---
+Some content.
+`
+ createPageContent := func(weight int) string {
+ return fmt.Sprintf(pageContent, weight)
+ }
+
+ b := newTestSitesBuilder(t)
+ b.WithSimpleConfigFile()
+ b.WithTemplates("_default/single.html", `
+Prev: {{ with .PrevInSection }}{{ .RelPermalink }}{{ end }}|
+Next: {{ with .NextInSection }}{{ .RelPermalink }}{{ end }}|
+`)
+
+ b.WithContent("blog/page1.md", createPageContent(1))
+ b.WithContent("blog/page2.md", createPageContent(2))
+ b.WithContent("blog/cool/_index.md", createPageContent(1))
+ b.WithContent("blog/cool/cool1.md", createPageContent(1))
+ b.WithContent("blog/cool/cool2.md", createPageContent(2))
+ b.WithContent("root1.md", createPageContent(1))
+ b.WithContent("root2.md", createPageContent(2))
+
+ b.Build(BuildCfg{})
+
+ b.AssertFileContent("public/root1/index.html",
+ "Prev: /root2/|", "Next: |")
+ b.AssertFileContent("public/root2/index.html",
+ "Prev: |", "Next: /root1/|")
+ b.AssertFileContent("public/blog/page1/index.html",
+ "Prev: /blog/page2/|", "Next: |")
+ b.AssertFileContent("public/blog/page2/index.html",
+ "Prev: |", "Next: /blog/page1/|")
+ b.AssertFileContent("public/blog/cool/cool1/index.html",
+ "Prev: /blog/cool/cool2/|", "Next: |")
+ b.AssertFileContent("public/blog/cool/cool2/index.html",
+ "Prev: |", "Next: /blog/cool/cool1/|")
+
+}