mirror of
https://github.com/mikefarah/yq.git
synced 2024-11-12 13:48:06 +00:00
Bugfix: Append when array empty results in null value
Initialize new array as empty instead of having a single value. Resolves: #41
This commit is contained in:
parent
7b004cb456
commit
185d1faadb
@ -454,6 +454,24 @@ func TestWriteCmd_Append(t *testing.T) {
|
||||
assertResult(t, expectedOutput, result.Output)
|
||||
}
|
||||
|
||||
func TestWriteCmd_AppendEmptyArray(t *testing.T) {
|
||||
content := `a: 2
|
||||
`
|
||||
filename := writeTempYamlFile(content)
|
||||
defer removeTempYamlFile(filename)
|
||||
|
||||
cmd := getRootCommand()
|
||||
result := runCmd(cmd, fmt.Sprintf("write %s b[+] v", filename))
|
||||
if result.Error != nil {
|
||||
t.Error(result.Error)
|
||||
}
|
||||
expectedOutput := `a: 2
|
||||
b:
|
||||
- v
|
||||
`
|
||||
assertResult(t, expectedOutput, result.Output)
|
||||
}
|
||||
|
||||
func TestMergeCmd(t *testing.T) {
|
||||
cmd := getRootCommand()
|
||||
result := runCmd(cmd, "merge examples/data1.yaml examples/data2.yaml")
|
||||
|
@ -71,7 +71,7 @@ func writeArray(context interface{}, paths []string, value interface{}) []interf
|
||||
case []interface{}:
|
||||
array = context.([]interface{})
|
||||
default:
|
||||
array = make([]interface{}, 1)
|
||||
array = make([]interface{}, 0)
|
||||
}
|
||||
|
||||
if len(paths) == 0 {
|
||||
|
Loading…
Reference in New Issue
Block a user