mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-05-10 20:05:50 +02:00
Validate custom commands in sub menus
This commit is contained in:
parent
e295477951
commit
4e3d09e9d8
2 changed files with 12 additions and 10 deletions
|
@ -101,8 +101,8 @@ func validateCustomCommands(customCommands []CustomCommand) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(customCommand.CommandMenu) > 0 &&
|
if len(customCommand.CommandMenu) > 0 {
|
||||||
(len(customCommand.Context) > 0 ||
|
if len(customCommand.Context) > 0 ||
|
||||||
len(customCommand.Command) > 0 ||
|
len(customCommand.Command) > 0 ||
|
||||||
customCommand.Subprocess != nil ||
|
customCommand.Subprocess != nil ||
|
||||||
len(customCommand.Prompts) > 0 ||
|
len(customCommand.Prompts) > 0 ||
|
||||||
|
@ -110,12 +110,17 @@ func validateCustomCommands(customCommands []CustomCommand) error {
|
||||||
customCommand.Stream != nil ||
|
customCommand.Stream != nil ||
|
||||||
customCommand.ShowOutput != nil ||
|
customCommand.ShowOutput != nil ||
|
||||||
len(customCommand.OutputTitle) > 0 ||
|
len(customCommand.OutputTitle) > 0 ||
|
||||||
customCommand.After != nil) {
|
customCommand.After != nil {
|
||||||
commandRef := ""
|
commandRef := ""
|
||||||
if len(customCommand.Key) > 0 {
|
if len(customCommand.Key) > 0 {
|
||||||
commandRef = fmt.Sprintf(" with key '%s'", customCommand.Key)
|
commandRef = fmt.Sprintf(" with key '%s'", customCommand.Key)
|
||||||
|
}
|
||||||
|
return fmt.Errorf("Error with custom command%s: it is not allowed to use both commandMenu and any of the other fields except key and description.", commandRef)
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := validateCustomCommands(customCommand.CommandMenu); err != nil {
|
||||||
|
return err
|
||||||
}
|
}
|
||||||
return fmt.Errorf("Error with custom command%s: it is not allowed to use both commandMenu and any of the other fields except key and description.", commandRef)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
|
|
@ -92,10 +92,7 @@ func TestUserConfigValidate_enums(t *testing.T) {
|
||||||
{value: "<disabled>", valid: true},
|
{value: "<disabled>", valid: true},
|
||||||
{value: "q", valid: true},
|
{value: "q", valid: true},
|
||||||
{value: "<c-c>", valid: true},
|
{value: "<c-c>", valid: true},
|
||||||
/* EXPECTED:
|
|
||||||
{value: "invalid_value", valid: false},
|
{value: "invalid_value", valid: false},
|
||||||
ACTUAL */
|
|
||||||
{value: "invalid_value", valid: true},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue