@@ -175,6 +175,15 @@ void main() {
175
175
expect (renderFoo (foo, fooTemplate), equals ('Text Num 1, Num 2, Num 3, ' ));
176
176
});
177
177
178
+ test ('Renderer renders a repeated section node with a multi-name key' ,
179
+ () async {
180
+ var barTemplateFile = getFile ('/project/bar.mustache' )
181
+ ..writeAsStringSync ('Text {{#foo.l1}}Num {{.}}, {{/foo.l1}}' );
182
+ var barTemplate = await Template .parse (barTemplateFile);
183
+ var bar = Bar ()..foo = (Foo ()..l1 = [1 , 2 , 3 ]);
184
+ expect (renderBar (bar, barTemplate), equals ('Text Num 1, Num 2, Num 3, ' ));
185
+ });
186
+
178
187
test ('Renderer renders an empty repeated section node as blank' , () async {
179
188
var fooTemplateFile = getFile ('/project/foo.mustache' )
180
189
..writeAsStringSync ('Text {{#l1}}Num {{.}}, {{/l1}}' );
@@ -200,11 +209,11 @@ void main() {
200
209
});
201
210
202
211
test ('Renderer renders a value section node' , () async {
203
- var fooTemplateFile = getFile ('/project/foo .mustache' )
212
+ var barTemplateFile = getFile ('/project/bar .mustache' )
204
213
..writeAsStringSync ('Text {{#foo}}Foo: {{s1}}{{/foo}}' );
205
- var fooTemplate = await Template .parse (fooTemplateFile );
214
+ var barTemplate = await Template .parse (barTemplateFile );
206
215
var bar = Bar ()..foo = (Foo ()..s1 = 'hello' );
207
- expect (renderBar (bar, fooTemplate ), equals ('Text Foo: hello' ));
216
+ expect (renderBar (bar, barTemplate ), equals ('Text Foo: hello' ));
208
217
});
209
218
210
219
test ('Renderer renders a null value section node as blank' , () async {
@@ -241,41 +250,41 @@ void main() {
241
250
242
251
test ('Renderer resolves variable from outer context inside a value section' ,
243
252
() async {
244
- var fooTemplateFile = getFile ('/project/foo.mustache' )
253
+ var barTemplateFile = getFile ('/project/foo.mustache' )
245
254
..writeAsStringSync ('Text {{#foo}}{{s2}}{{/foo}}' );
246
- var fooTemplate = await Template .parse (fooTemplateFile );
255
+ var barTemplate = await Template .parse (barTemplateFile );
247
256
var bar = Bar ()
248
257
..foo = (Foo ()..s1 = 'hello' )
249
258
..s2 = 'goodbye' ;
250
- expect (renderBar (bar, fooTemplate ), equals ('Text goodbye' ));
259
+ expect (renderBar (bar, barTemplate ), equals ('Text goodbye' ));
251
260
});
252
261
253
262
test ('Renderer resolves variable with key with multiple names' , () async {
254
- var fooTemplateFile = getFile ('/project/foo.mustache' )
263
+ var barTemplateFile = getFile ('/project/foo.mustache' )
255
264
..writeAsStringSync ('Text {{foo.s1}}' );
256
- var fooTemplate = await Template .parse (fooTemplateFile );
265
+ var barTemplate = await Template .parse (barTemplateFile );
257
266
var bar = Bar ()
258
267
..foo = (Foo ()..s1 = 'hello' )
259
268
..s2 = 'goodbye' ;
260
- expect (renderBar (bar, fooTemplate ), equals ('Text hello' ));
269
+ expect (renderBar (bar, barTemplate ), equals ('Text hello' ));
261
270
});
262
271
263
272
test ('Renderer resolves outer variable with key with two names' , () async {
264
- var fooTemplateFile = getFile ('/project/foo.mustache' )
273
+ var barTemplateFile = getFile ('/project/foo.mustache' )
265
274
..writeAsStringSync ('Text {{#foo}}{{foo.s1}}{{/foo}}' );
266
- var fooTemplate = await Template .parse (fooTemplateFile );
275
+ var barTemplate = await Template .parse (barTemplateFile );
267
276
var bar = Bar ()
268
277
..foo = (Foo ()..s1 = 'hello' )
269
278
..s2 = 'goodbye' ;
270
- expect (renderBar (bar, fooTemplate ), equals ('Text hello' ));
279
+ expect (renderBar (bar, barTemplate ), equals ('Text hello' ));
271
280
});
272
281
273
282
test ('Renderer resolves outer variable with key with three names' , () async {
274
- var fooTemplateFile = getFile ('/project/foo.mustache' )
283
+ var bazTemplateFile = getFile ('/project/foo.mustache' )
275
284
..writeAsStringSync ('Text {{#bar}}{{bar.foo.s1}}{{/bar}}' );
276
- var fooTemplate = await Template .parse (fooTemplateFile );
285
+ var bazTemplate = await Template .parse (bazTemplateFile );
277
286
var baz = Baz ()..bar = (Bar ()..foo = (Foo ()..s1 = 'hello' ));
278
- expect (renderBaz (baz, fooTemplate ), equals ('Text hello' ));
287
+ expect (renderBaz (baz, bazTemplate ), equals ('Text hello' ));
279
288
});
280
289
281
290
test ('Renderer resolves outer variable with key with more than three names' ,
0 commit comments