mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-23 22:27:38 -05:00
template: add test for custom function
Signed-off-by: Tw <tw19881113@gmail.com>
This commit is contained in:
parent
f28a159b72
commit
790c842fad
4 changed files with 12 additions and 3 deletions
|
@ -264,8 +264,7 @@ func ContextInclude(filename string, ctx interface{}, fs http.FileSystem) (strin
|
|||
return "", err
|
||||
}
|
||||
|
||||
tpl := template.New(filename).Funcs(TemplateFuncs)
|
||||
tpl, err = tpl.Parse(string(body))
|
||||
tpl, err := template.New(filename).Funcs(TemplateFuncs).Parse(string(body))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
|
|
@ -72,8 +72,16 @@ func TestInclude(t *testing.T) {
|
|||
shouldErr: true,
|
||||
expectedErrorContent: `type httpserver.Context`,
|
||||
},
|
||||
// Test 4 - all good, with custom function
|
||||
{
|
||||
fileContent: `hello {{ caddy }}`,
|
||||
expectedContent: "hello caddy",
|
||||
shouldErr: false,
|
||||
expectedErrorContent: "",
|
||||
},
|
||||
}
|
||||
|
||||
TemplateFuncs["caddy"] = func() string { return "caddy" }
|
||||
for i, test := range tests {
|
||||
testPrefix := getTestPrefix(i)
|
||||
|
||||
|
|
|
@ -121,6 +121,8 @@ func TestTemplates(t *testing.T) {
|
|||
|
||||
rec = httptest.NewRecorder()
|
||||
|
||||
// register custom function which is used in template
|
||||
httpserver.TemplateFuncs["root"] = func() string { return "root" }
|
||||
tmplroot.ServeHTTP(rec, req)
|
||||
|
||||
if rec.Code != http.StatusOK {
|
||||
|
|
2
caddyhttp/templates/testdata/root.html
vendored
2
caddyhttp/templates/testdata/root.html
vendored
|
@ -1 +1 @@
|
|||
<!DOCTYPE html><html><head><title>root</title></head><body>{{.Include "header.html"}}</body></html>
|
||||
<!DOCTYPE html><html><head><title>{{ root }}</title></head><body>{{.Include "header.html"}}</body></html>
|
||||
|
|
Loading…
Reference in a new issue