ref: 046320d3f41e8331583da2ec896ca563eef6dbcb
parent: c38bfda43bde093aa5f3b3245e3d2de5190d1991
author: Bjørn Erik Pedersen <[email protected]>
date: Sun Nov 27 13:01:43 EST 2016
tpl: Fix params case issue with nested template funcs Fixes #2740
--- a/tpl/template_ast_transformers.go
+++ b/tpl/template_ast_transformers.go
@@ -97,7 +97,10 @@
c.updateIdentsIfNeeded(an.Ident)
case *parse.VariableNode:
c.updateIdentsIfNeeded(an.Ident)
+ case *parse.PipeNode:
+ c.paramsKeysToLower(an)
}
+
}
}
}
--- a/tpl/template_ast_transformers_test.go
+++ b/tpl/template_ast_transformers_test.go
@@ -104,6 +104,12 @@
{{ .NotParam }}
{{ .NotParam }}
{{ $notparam }}
+
+
+{{ $lower := .Site.Params.LOWER }}
+F1: {{ printf "themes/%s-theme" .Site.Params.LOWER }}
+F2: {{ Echo (printf "themes/%s-theme" $lower) }}
+F3: {{ Echo (printf "themes/%s-theme" .Site.Params.LOWER) }}
`
)
@@ -152,6 +158,12 @@
require.Contains(t, result, "RANGE: 3: P1L")
require.Contains(t, result, "Hi There")
+
+ // Issue #2740
+ require.Contains(t, result, "F1: themes/P2L-theme")
+ require.Contains(t, result, "F2: themes/P2L-theme")
+ require.Contains(t, result, "F3: themes/P2L-theme")
+
}
func BenchmarkTemplateParamsKeysToLower(b *testing.B) {