mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
cli: improve multiple value management (#8310)
This commit is contained in:
@ -18,9 +18,8 @@ fn test_if_string_flag_parses() {
|
||||
assert value == 'value2'
|
||||
|
||||
flag = cli.Flag{
|
||||
flag: .string
|
||||
flag: .string_array
|
||||
name: 'flag'
|
||||
multiple: true
|
||||
}
|
||||
flag.parse(['-flag=value1'], false) or { panic(err) }
|
||||
flag.parse(['-flag=value2'], false) or { panic(err) }
|
||||
@ -29,9 +28,8 @@ fn test_if_string_flag_parses() {
|
||||
|
||||
flags := [
|
||||
cli.Flag{
|
||||
flag: .string
|
||||
flag: .string_array
|
||||
name: 'flag'
|
||||
multiple: true
|
||||
value: ['a', 'b', 'c']
|
||||
},
|
||||
cli.Flag{
|
||||
@ -88,9 +86,8 @@ fn test_if_int_flag_parses() {
|
||||
assert value == 45
|
||||
|
||||
flag = cli.Flag{
|
||||
flag: .int
|
||||
flag: .int_array
|
||||
name: 'flag'
|
||||
multiple: true
|
||||
}
|
||||
|
||||
flag.parse(['-flag=42'], false) or { panic(err) }
|
||||
@ -100,9 +97,8 @@ fn test_if_int_flag_parses() {
|
||||
|
||||
flags := [
|
||||
cli.Flag{
|
||||
flag: .int
|
||||
flag: .int_array
|
||||
name: 'flag'
|
||||
multiple: true
|
||||
value: ['1', '2', '3']
|
||||
},
|
||||
cli.Flag{
|
||||
@ -131,14 +127,12 @@ fn test_if_float_flag_parses() {
|
||||
}
|
||||
|
||||
flag.parse(['-flag=3.14159'], false) or { panic(err) }
|
||||
assert flag.value[0].f64() == 3.14159
|
||||
value = flag.get_float() or { panic(err) }
|
||||
assert value == 3.14159
|
||||
|
||||
flag = cli.Flag{
|
||||
flag: .float
|
||||
flag: .float_array
|
||||
name: 'flag'
|
||||
multiple: true
|
||||
}
|
||||
|
||||
flag.parse(['-flag=3.1'], false) or { panic(err) }
|
||||
@ -148,9 +142,8 @@ fn test_if_float_flag_parses() {
|
||||
|
||||
flags := [
|
||||
cli.Flag{
|
||||
flag: .float
|
||||
flag: .float_array
|
||||
name: 'flag'
|
||||
multiple: true
|
||||
value: ['1.1', '2.2', '3.3']
|
||||
},
|
||||
cli.Flag{
|
||||
@ -199,3 +192,25 @@ fn test_if_multiple_value_on_single_value() {
|
||||
assert true
|
||||
}
|
||||
}
|
||||
|
||||
fn test_default_value() {
|
||||
mut flag := cli.Flag{
|
||||
flag: .float
|
||||
name: 'flag'
|
||||
default_value: ['1.234']
|
||||
}
|
||||
|
||||
flag.parse(['-flag', '3.14158'], false) or { panic(err) }
|
||||
mut value := flag.get_float() or { panic(err) }
|
||||
assert value == 3.14158
|
||||
|
||||
flag = cli.Flag{
|
||||
flag: .float
|
||||
name: 'flag'
|
||||
default_value: ['1.234']
|
||||
}
|
||||
|
||||
flag.parse([''], false) or { panic(err) }
|
||||
value = flag.get_float() or { panic(err) }
|
||||
assert value == 1.234
|
||||
}
|
||||
|
Reference in New Issue
Block a user