hugolib: Improve nil handling in IsDescendant and IsAncestor

Fixes #5461
This commit is contained in:
Bjørn Erik Pedersen 2018-11-28 12:36:59 +01:00
parent 7540a62834
commit b09a40333f
No known key found for this signature in database
GPG key ID: 330E6E2BD4859D8F
2 changed files with 23 additions and 2 deletions

View file

@ -238,6 +238,8 @@ PAG|{{ .Title }}|{{ $sect.InSection . }}
assert.Len(p.Sections(), 0)
}},
{"l1,l2,l3", func(p *Page) {
var nilp *Page
assert.Equal("T3_-1", p.title)
assert.Len(p.Pages, 2)
assert.Equal("T2_-1", p.Parent().title)
@ -247,6 +249,12 @@ PAG|{{ .Title }}|{{ $sect.InSection . }}
isDescendant, err := l1.IsDescendant(p)
assert.NoError(err)
assert.False(isDescendant)
isDescendant, err = l1.IsDescendant(nil)
assert.NoError(err)
assert.False(isDescendant)
isDescendant, err = nilp.IsDescendant(p)
assert.NoError(err)
assert.False(isDescendant)
isDescendant, err = p.IsDescendant(l1)
assert.NoError(err)
assert.True(isDescendant)
@ -258,6 +266,12 @@ PAG|{{ .Title }}|{{ $sect.InSection . }}
assert.NoError(err)
assert.False(isAncestor)
assert.Equal(l1, p.FirstSection())
isAncestor, err = p.IsAncestor(nil)
assert.NoError(err)
assert.False(isAncestor)
isAncestor, err = nilp.IsAncestor(l1)
assert.NoError(err)
assert.False(isAncestor)
}},
{"perm a,link", func(p *Page) {