mirror of
https://github.com/gohugoio/hugo.git
synced 2025-02-17 03:02:51 +00:00
parent
0bdc0d62d4
commit
593a546fc6
2 changed files with 13 additions and 7 deletions
|
@ -66,6 +66,9 @@ func (scp *ShortcodeWithPage) Scratch() *Scratch {
|
|||
|
||||
// Get is a convenience method to look up shortcode parameters by its key.
|
||||
func (scp *ShortcodeWithPage) Get(key interface{}) interface{} {
|
||||
if scp.Params == nil {
|
||||
return nil
|
||||
}
|
||||
if reflect.ValueOf(scp.Params).Len() == 0 {
|
||||
return nil
|
||||
}
|
||||
|
|
|
@ -124,13 +124,6 @@ func TestPositionalParamIndexOutOfBounds(t *testing.T) {
|
|||
CheckShortCodeMatch(t, "{{< video 47238zzb >}}", "Playing Video error: index out of range for positional param at position 1", tem)
|
||||
}
|
||||
|
||||
// Issue #2294
|
||||
func TestPositionalParamNil(t *testing.T) {
|
||||
tem := tpl.New()
|
||||
tem.AddInternalShortcode("div.html", `<div data='{{ .Get 0 }}'>{{ .Inner }}</div>`)
|
||||
CheckShortCodeMatch(t, "{{% div %}}**foo**{{% /div %}}", "<div data=''><strong>foo</strong></div>", tem)
|
||||
}
|
||||
|
||||
// some repro issues for panics in Go Fuzz testing
|
||||
func TestShortcodeGoFuzzRepros(t *testing.T) {
|
||||
tt := tpl.New()
|
||||
|
@ -151,6 +144,16 @@ func TestNamedParamSC(t *testing.T) {
|
|||
CheckShortCodeMatch(t, `{{< img src = "one" class = "aspen grove" >}}`, `<img src="one" class="aspen grove">`, tem)
|
||||
}
|
||||
|
||||
// Issue #2294
|
||||
func TestNestedNamedMissingParam(t *testing.T) {
|
||||
tem := tpl.New()
|
||||
tem.AddInternalShortcode("acc.html", `<div class="acc">{{ .Inner }}</div>`)
|
||||
tem.AddInternalShortcode("div.html", `<div {{with .Get "class"}} class="{{ . }}"{{ end }}>{{ .Inner }}</div>`)
|
||||
CheckShortCodeMatch(t,
|
||||
`{{% acc %}}{{% div %}}{{% /div %}}{{% /acc %}}`,
|
||||
"<div class=\"acc\"><div ></div>\n</div>", tem)
|
||||
}
|
||||
|
||||
func TestIsNamedParamsSC(t *testing.T) {
|
||||
tem := tpl.New()
|
||||
tem.AddInternalShortcode("byposition.html", `<div id="{{ .Get 0 }}">`)
|
||||
|
|
Loading…
Reference in a new issue