mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-03-19 21:28:28 +02:00
Support updating values in empty documents
This commit is contained in:
parent
a14794bf5c
commit
90084d115e
@ -15,6 +15,13 @@ func UpdateYamlValue(yamlBytes []byte, path []string, value string) ([]byte, err
|
||||
return nil, fmt.Errorf("failed to parse YAML: %w", err)
|
||||
}
|
||||
|
||||
// Empty document: need to create the top-level map ourselves
|
||||
if len(node.Content) == 0 {
|
||||
node.Content = append(node.Content, &yaml.Node{
|
||||
Kind: yaml.MappingNode,
|
||||
})
|
||||
}
|
||||
|
||||
body := node.Content[0]
|
||||
|
||||
updateYamlNode(body, path, value)
|
||||
|
@ -31,6 +31,14 @@ func TestUpdateYamlValue(t *testing.T) {
|
||||
expectedOut: "foo: bar\nfoo2: baz\n",
|
||||
expectedErr: "",
|
||||
},
|
||||
{
|
||||
name: "add new key and value when document was empty",
|
||||
in: "",
|
||||
path: []string{"foo"},
|
||||
value: "bar",
|
||||
expectedOut: "foo: bar\n",
|
||||
expectedErr: "",
|
||||
},
|
||||
{
|
||||
name: "preserve inline comment",
|
||||
in: "foo: bar # my comment\n",
|
||||
|
Loading…
x
Reference in New Issue
Block a user