mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
parent
a985efcecf
commit
4d7fa9f114
2 changed files with 52 additions and 8 deletions
|
@ -50,10 +50,6 @@ func (pt pageTree) IsAncestor(other interface{}) (bool, error) {
|
||||||
return ref1.n.p.IsHome(), nil
|
return ref1.n.p.IsHome(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if !ref1.isSection() {
|
|
||||||
return false, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
if ref1.key == ref2.key {
|
if ref1.key == ref2.key {
|
||||||
return true, nil
|
return true, nil
|
||||||
}
|
}
|
||||||
|
@ -101,10 +97,6 @@ func (pt pageTree) IsDescendant(other interface{}) (bool, error) {
|
||||||
return ref2.n.p.IsHome(), nil
|
return ref2.n.p.IsHome(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if !ref2.isSection() {
|
|
||||||
return false, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
if ref1.key == ref2.key {
|
if ref1.key == ref2.key {
|
||||||
return true, nil
|
return true, nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -655,3 +655,55 @@ Category Paginator /categories/birds/|/categories/cats/|/categories/dogs/|/categ
|
||||||
b.AssertFileContent("public/categories/index.xml", `<link>http://example.com/categories/funny/</link>`)
|
b.AssertFileContent("public/categories/index.xml", `<link>http://example.com/categories/funny/</link>`)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestTaxonomiesDirectoryOverlaps(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
|
||||||
|
b := newTestSitesBuilder(t).WithContent(
|
||||||
|
"abc/_index.md", "---\ntitle: \"abc\"\nabcdefgs: [abc]\n---",
|
||||||
|
"abc/p1.md", "---\ntitle: \"abc-p\"\n---",
|
||||||
|
"abcdefgh/_index.md", "---\ntitle: \"abcdefgh\"\n---",
|
||||||
|
"abcdefgh/p1.md", "---\ntitle: \"abcdefgh-p\"\n---",
|
||||||
|
"abcdefghijk/index.md", "---\ntitle: \"abcdefghijk\"\n---",
|
||||||
|
)
|
||||||
|
|
||||||
|
b.WithConfigFile("toml", `
|
||||||
|
baseURL = "https://example.org"
|
||||||
|
|
||||||
|
[taxonomies]
|
||||||
|
abcdef = "abcdefs"
|
||||||
|
abcdefg = "abcdefgs"
|
||||||
|
abcdefghi = "abcdefghis"
|
||||||
|
`)
|
||||||
|
|
||||||
|
b.WithTemplatesAdded("index.html", `
|
||||||
|
{{ range site.Pages }}Page: {{ template "print-page" . }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $abc := site.GetPage "abcdefgs/abc" }}
|
||||||
|
{{ $abcdefgs := site.GetPage "abcdefgs" }}
|
||||||
|
abc: {{ template "print-page" $abc }}|IsAncestor: {{ $abc.IsAncestor $abcdefgs }}|IsDescendant: {{ $abc.IsDescendant $abcdefgs }}
|
||||||
|
abcdefgs: {{ template "print-page" $abcdefgs }}|IsAncestor: {{ $abcdefgs.IsAncestor $abc }}|IsDescendant: {{ $abcdefgs.IsDescendant $abc }}
|
||||||
|
|
||||||
|
{{ define "print-page" }}{{ .RelPermalink }}|{{ .Title }}|{{.Kind }}|Parent: {{ with .Parent }}{{ .RelPermalink }}{{ end }}|CurrentSection: {{ .CurrentSection.RelPermalink}}|FirstSection: {{ .FirstSection.RelPermalink }}{{ end }}
|
||||||
|
|
||||||
|
`)
|
||||||
|
|
||||||
|
b.Build(BuildCfg{})
|
||||||
|
|
||||||
|
b.AssertFileContent("public/index.html", `
|
||||||
|
Page: /||home|Parent: |CurrentSection: /|
|
||||||
|
Page: /abc/|abc|section|Parent: /|CurrentSection: /abc/|
|
||||||
|
Page: /abc/p1/|abc-p|page|Parent: /abc/|CurrentSection: /abc/|
|
||||||
|
Page: /abcdefgh/|abcdefgh|section|Parent: /|CurrentSection: /abcdefgh/|
|
||||||
|
Page: /abcdefgh/p1/|abcdefgh-p|page|Parent: /abcdefgh/|CurrentSection: /abcdefgh/|
|
||||||
|
Page: /abcdefghijk/|abcdefghijk|page|Parent: /|CurrentSection: /|
|
||||||
|
Page: /abcdefghis/|Abcdefghis|taxonomyTerm|Parent: /|CurrentSection: /|
|
||||||
|
Page: /abcdefgs/|Abcdefgs|taxonomyTerm|Parent: /|CurrentSection: /|
|
||||||
|
Page: /abcdefs/|Abcdefs|taxonomyTerm|Parent: /|CurrentSection: /|
|
||||||
|
abc: /abcdefgs/abc/|abc|taxonomy|Parent: /abcdefgs/|CurrentSection: /abcdefgs/|
|
||||||
|
abcdefgs: /abcdefgs/|Abcdefgs|taxonomyTerm|Parent: /|CurrentSection: /|
|
||||||
|
abc: /abcdefgs/abc/|abc|taxonomy|Parent: /abcdefgs/|CurrentSection: /abcdefgs/|FirstSection: /|IsAncestor: false|IsDescendant: true
|
||||||
|
abcdefgs: /abcdefgs/|Abcdefgs|taxonomyTerm|Parent: /|CurrentSection: /|FirstSection: /|IsAncestor: true|IsDescendant: false
|
||||||
|
`)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue