@@ -522,19 +522,23 @@ func TestJson(t *testing.T) {
522522func TestParseJson (t * testing.T ) {
523523 tests := []struct {
524524 tmpl string
525- input string
525+ context interface {}
526526 expected string
527527 }{
528- {`{{index (parseJson .) "enabled"}}` , `{"enabled":true}` , "true" },
529- {`{{index (parseJson . | first) "enabled"}}` , `[{"enabled":true}]` , "true" },
528+ {`{{parseJson .}}` , `null` , `<no value>` },
529+ {`{{parseJson .}}` , `true` , `true` },
530+ {`{{parseJson .}}` , `1` , `1` },
531+ {`{{parseJson .}}` , `0.5` , `0.5` },
532+ {`{{index (parseJson .) "enabled"}}` , `{"enabled":true}` , `true` },
533+ {`{{index (parseJson . | first) "enabled"}}` , `[{"enabled":true}]` , `true` },
530534 }
531535
532536 for n , test := range tests {
533537 tmplName := fmt .Sprintf ("parseJson-test-%d" , n )
534538 tmpl := template .Must (newTemplate (tmplName ).Parse (test .tmpl ))
535539
536540 var b bytes.Buffer
537- err := tmpl .ExecuteTemplate (& b , tmplName , test .input )
541+ err := tmpl .ExecuteTemplate (& b , tmplName , test .context )
538542 if err != nil {
539543 t .Fatalf ("Error executing template: %v" , err )
540544 }
0 commit comments