1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

cli: ensure that required flags are set (#8826)

This commit is contained in:
Miccah
2021-02-19 04:43:18 -06:00
committed by GitHub
parent 3f3bec45fa
commit a153ec5951
3 changed files with 25 additions and 8 deletions

View File

@@ -117,6 +117,23 @@ fn test_if_multiple_flags_get_set() {
cmd.parse(['command', '-flag', 'value', '-value', '42'])
}
fn test_if_required_flags_get_set() {
mut cmd := cli.Command{
name: 'command'
execute: flag_should_have_value_of_42
}
cmd.add_flag(cli.Flag{
flag: .string
name: 'flag'
})
cmd.add_flag(cli.Flag{
flag: .int
name: 'value'
required: true
})
cmd.parse(['command', '-flag', 'value', '-value', '42'])
}
fn flag_is_set_in_subcommand(cmd cli.Command) ? {
flag := cmd.flags.get_string('flag') or { panic(err) }
assert flag == 'value'