feat(tmpl): enhance ToYaml test with multiple scenarios
Signed-off-by: yxxhero <aiopsclub@163.com>
This commit is contained in:
parent
833b72383d
commit
052fd7524c
|
|
@ -186,18 +186,66 @@ func TestToYaml_NestedMapInterfaceKey(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestToYaml(t *testing.T) {
|
func TestToYaml(t *testing.T) {
|
||||||
expected := `foo:
|
tests := []struct {
|
||||||
bar: BAR
|
name string
|
||||||
`
|
input any
|
||||||
// nolint: unconvert
|
expected string
|
||||||
vals := Values(map[string]any{
|
wantErr bool
|
||||||
"foo": map[string]any{
|
}{
|
||||||
"bar": "BAR",
|
{
|
||||||
|
// https://github.com/helmfile/helmfile/issues/2024
|
||||||
|
name: "test unmarshalling issue 2024",
|
||||||
|
input: map[string]any{"thisShouldBeString": "01234567890123456789"},
|
||||||
|
expected: `thisShouldBeString: "01234567890123456789"
|
||||||
|
`,
|
||||||
},
|
},
|
||||||
})
|
{
|
||||||
actual, err := ToYaml(vals)
|
name: "test unmarshalling object",
|
||||||
|
input: map[string]any{"foo": map[string]any{"bar": "BAR"}},
|
||||||
|
expected: `foo:
|
||||||
|
bar: BAR
|
||||||
|
`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "test unmarshalling array",
|
||||||
|
input: []any{"foo", map[string]any{"bar": "BAR"}},
|
||||||
|
expected: `- foo
|
||||||
|
- bar: BAR
|
||||||
|
`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "test unmarshalling string",
|
||||||
|
input: "foo",
|
||||||
|
expected: "foo\n",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "test unmarshalling number",
|
||||||
|
input: 1234,
|
||||||
|
expected: "1234\n",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "test unmarshalling boolean",
|
||||||
|
input: true,
|
||||||
|
expected: "true\n",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "test unmarshalling null",
|
||||||
|
input: nil,
|
||||||
|
expected: "null\n",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, tt := range tests {
|
||||||
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
actual, err := ToYaml(tt.input)
|
||||||
|
if tt.wantErr {
|
||||||
|
require.Error(t, err)
|
||||||
|
} else {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, expected, actual)
|
}
|
||||||
|
require.Equal(t, tt.expected, actual)
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func testFromYamlObject(t *testing.T) {
|
func testFromYamlObject(t *testing.T) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue