Home | History | Annotate | Download | only in template

Lines Matching full:template

5 package template
7 // Tests for mulitple-template parsing and execution.
14 "text/template/parse"
51 template, err := New("root").Parse(test.input)
66 if template == nil {
69 if len(template.tmpl) != len(test.names)+1 { // +1 for root
70 t.Errorf("%s: wrong number of templates; wanted %d got %d", test.name, len(test.names), len(template.tmpl))
74 tmpl, ok := template.tmpl[name]
76 t.Errorf("%s: can't find template %q", test.name, name)
90 {"invoke x", `{{template "x" .SI}}`, "TEXT", tVal, true},
91 {"invoke x no args", `{{template "x"}}`, "TEXT", tVal, true},
92 {"invoke dot int", `{{template "dot" .I}}`, "17", tVal, true},
93 {"invoke dot []int", `{{template "dot" .SI}}`, "[3 4 5]", tVal, true},
94 {"invoke dotV", `{{template "dotV" .U}}`, "v", tVal, true},
95 {"invoke nested int", `{{template "nested" .I}}`, "17", tVal, true},
96 {"variable declared by template", `{{template "nested" $x:=.SI}},{{index $x 1}}`, "[3 4 5],4", tVal, true},
111 {{define "nested"}}{{template "dot" .}}{{end}}
116 template, err := New("root").Parse(multiText1)
120 _, err = template.Parse(multiText2)
124 testExecute(multiExecTests, template, t)
132 template := New("root")
133 _, err = template.ParseFiles("testdata/file1.tmpl", "testdata/file2.tmpl")
137 testExecute(multiExecTests, template, t)
149 template := New("root")
150 _, err = template.ParseGlob("testdata/file*.tmpl")
154 testExecute(multiExecTests, template, t)
157 // In these tests, actual content (not just template definitions) comes from the parsed files.
160 {"test", `{{template "tmpl1.tmpl"}}{{template "tmpl2.tmpl"}}`, "template1\n\ny\ntemplate2\n\nx\n", 0, true},
164 template, err := New("root").ParseFiles("testdata/tmpl1.tmpl", "testdata/tmpl2.tmpl")
168 testExecute(templateFileExecTests, template, t)
172 template, err := New("root").ParseGlob("testdata/tmpl*.tmpl")
176 testExecute(templateFileExecTests, template, t)
180 cloneText1 = `{{define "a"}}{{template "b"}}{{template "c"}}{{end}}`
275 var tmpl *Template
304 t.Error("Lookup returned non-nil value for undefined template foo")
308 t.Error("Lookup returned non-nil value for undefined template bar")
312 t.Error("Lookup returned nil value for defined template")
317 // template with same name already exists
325 t.Error("defined template got nil Tree")
328 t.Error("undefined template got non-nil Tree")
334 t.Error("Templates included undefined template")
341 t.Error("Templates didn't include defined template")
346 // In multiple calls to Parse with the same receiver template, only one call
347 // can contain text other than space, comments, and template definitions
360 t.Fatal("no error from redefining a template")