package config import ( "flag" "os" "testing" ) func TestInit(t *testing.T) { was := os.Args[:] os.Args = []string{"program"} flag.CommandLine = flag.NewFlagSet(os.Args[0], flag.ExitOnError) defer func() { os.Args = was[:] }() if err := Init(); err != nil { t.Errorf("failed to init: %v", err) } } func TestFromFile(t *testing.T) { was := os.Args[:] os.Args = []string{"program"} flag.CommandLine = flag.NewFlagSet(os.Args[0], flag.ExitOnError) defer func() { os.Args = was[:] }() if err := fromFile(); err != nil { t.Errorf("failed from file: %v", err) } } func TestFromFlags(t *testing.T) { was := os.Args[:] os.Args = []string{"program"} flag.CommandLine = flag.NewFlagSet(os.Args[0], flag.ExitOnError) defer func() { os.Args = was[:] }() if err := fromFlags(); err != nil { t.Errorf("failed from flags: %v", err) } }