Ilya Kiselev 5 days ago committed by GitHub
commit 258f6b4fa4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -150,7 +150,8 @@ func fromYAMLArray(str string) []any {
}
// toTOML takes an interface, marshals it to toml, and returns a string.
// On marshal error it returns the error string.
// On marshal error it returns an empty string (errors are swallowed),
// consistent with toYAML and toJSON.
//
// This is designed to be called from a template. Use mustToToml if you need
// the template to fail hard on marshal errors.
@ -159,7 +160,8 @@ func toTOML(v any) string {
e := toml.NewEncoder(b)
err := e.Encode(v)
if err != nil {
return err.Error()
// Swallow errors inside of a template.
return ""
}
return b.String()
}

@ -166,6 +166,10 @@ keyInElement1 = "valueInElement1"`,
tpl: `{{ mustToToml . }}`,
expect: "foo = \"bar\"\n", // should succeed and return TOML string
vars: map[string]string{"foo": "bar"},
}, {
tpl: `{{ toToml . }}`,
expect: "", // should return empty string and swallow error (not err.Error())
vars: map[int]string{1: "one"}, // non-string key is invalid in TOML
},
}

Loading…
Cancel
Save