set env to upper and flag to lower
parent
bcf1369f28
commit
5ee82f8fc1
5
arg.go
5
arg.go
|
|
@ -3,6 +3,7 @@ package args
|
|||
import (
|
||||
"fmt"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
|
|
@ -17,8 +18,8 @@ type Arg struct {
|
|||
|
||||
func NewArg(argType Type, key, help string, def interface{}) *Arg {
|
||||
return &Arg{
|
||||
Env: key,
|
||||
Flag: key,
|
||||
Env: strings.ToUpper(key),
|
||||
Flag: strings.ToLower(key),
|
||||
Help: help,
|
||||
Default: def,
|
||||
Value: def,
|
||||
|
|
|
|||
|
|
@ -22,19 +22,19 @@ func TestParse(t *testing.T) {
|
|||
defer func() {
|
||||
os.Args = osArgs
|
||||
}()
|
||||
os.Args = []string{"nothing", "-testkeyFlag", "5"}
|
||||
os.Setenv("testkeyEnv", "9")
|
||||
os.Args = []string{"nothing", "-flag", "5"}
|
||||
os.Setenv("ENV", "9")
|
||||
as := NewArgSet()
|
||||
as.Append(INT, "testkeyFlag", "help", 1)
|
||||
as.Append(INT, "testkeyEnv", "help", 2)
|
||||
as.Append(INT, "testkeyDefault", "help", 3)
|
||||
as.Append(INT, "flag", "help", 1)
|
||||
as.Append(INT, "env", "help", 2)
|
||||
as.Append(INT, "default", "help", 3)
|
||||
if err := as.Parse(); err != nil {
|
||||
t.Fatalf("cannot parse legal: %v", err)
|
||||
} else if arg := as.Get("testkeyFlag"); arg == nil || arg.Value != 5 {
|
||||
} else if arg := as.Get("flag"); arg == nil || arg.Value != 5 {
|
||||
t.Errorf("cannot set from flag: got %v", arg)
|
||||
} else if arg := as.Get("testkeyEnv"); arg == nil || arg.Value != 9 {
|
||||
} else if arg := as.Get("env"); arg == nil || arg.Value != 9 {
|
||||
t.Errorf("cannot set from env: got %v", arg)
|
||||
} else if arg := as.Get("testkeyDefault"); arg == nil || arg.Value != 3 {
|
||||
} else if arg := as.Get("default"); arg == nil || arg.Value != 3 {
|
||||
t.Errorf("cannot set from default: got %v", arg)
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue