moar tests
This commit is contained in:
parent
0d24a80075
commit
d9b257e145
|
@ -66,7 +66,7 @@ func Execute(version string) error {
|
|||
ccRoot.Annotations["version"] = version
|
||||
ccRoot.CompletionOptions.HiddenDefaultCmd = true
|
||||
ccRoot.PersistentFlags().AddFlagSet(cmdRoot.FlagSet())
|
||||
ccRoot.AddCommand(commands.Help)
|
||||
ccRoot.SetHelpCommand(commands.Help)
|
||||
ccRoot.AddCommand(commands.Version)
|
||||
ccRoot.AddCommand(commands.GenerateCompletions)
|
||||
|
||||
|
|
|
@ -11,12 +11,3 @@ var NoColor = "NO_COLOR"
|
|||
var ForceColor = "COLOR"
|
||||
var ValidationDisabled = "SKIP_VALIDATION"
|
||||
var Debug = "DEBUG"
|
||||
|
||||
// FlagNames are flags also available as environment variables.
|
||||
var FlagNames = map[string]string{
|
||||
"no-color": NoColor,
|
||||
"color": ForceColor,
|
||||
"silent": Silent,
|
||||
"verbose": Verbose,
|
||||
"skip-validation": ValidationDisabled,
|
||||
}
|
||||
|
|
|
@ -65,20 +65,19 @@ func VerboseEnabled() bool {
|
|||
}
|
||||
|
||||
func SilenceEnabled() bool {
|
||||
if isTrueIsh(os.Getenv(env.Silent)) {
|
||||
return true
|
||||
}
|
||||
if VerboseEnabled() {
|
||||
return false
|
||||
}
|
||||
for _, arg := range os.Args {
|
||||
if arg == "--silent" {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
if VerboseEnabled() {
|
||||
return false
|
||||
}
|
||||
|
||||
return isTrueIsh(os.Getenv(env.Silent))
|
||||
}
|
||||
|
||||
func ColorEnabled() bool {
|
||||
return isFalseIsh(os.Getenv(env.NoColor)) && !UnstyledHelpEnabled()
|
||||
}
|
||||
|
|
|
@ -83,6 +83,58 @@ func TestEnabled(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestSilent(t *testing.T) {
|
||||
origArgs := os.Args
|
||||
t.Cleanup(func() {
|
||||
os.Args = origArgs
|
||||
})
|
||||
t.Run("SILENT = silence", func(t *testing.T) {
|
||||
t.Setenv(env.Silent, "1")
|
||||
t.Setenv(env.Verbose, "")
|
||||
os.Args = []string{}
|
||||
if !SilenceEnabled() {
|
||||
t.Fail()
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("SILENT + VERBOSE = silence", func(t *testing.T) {
|
||||
t.Setenv(env.Silent, "1")
|
||||
t.Setenv(env.Verbose, "1")
|
||||
os.Args = []string{}
|
||||
if SilenceEnabled() {
|
||||
t.Fail()
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("VERBOSE + --silent = silent", func(t *testing.T) {
|
||||
t.Setenv(env.Silent, "")
|
||||
t.Setenv(env.Verbose, "1")
|
||||
os.Args = []string{"some", "random", "--silent", "args"}
|
||||
if !SilenceEnabled() {
|
||||
t.Fail()
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("--silent = silent", func(t *testing.T) {
|
||||
t.Setenv(env.Silent, "")
|
||||
t.Setenv(env.Verbose, "")
|
||||
os.Args = []string{"some", "random", "--silent", "args"}
|
||||
if !SilenceEnabled() {
|
||||
t.Fail()
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("nothing = nothing", func(t *testing.T) {
|
||||
t.Setenv(env.Silent, "")
|
||||
t.Setenv(env.Verbose, "")
|
||||
os.Args = []string{"some", "random", "args"}
|
||||
if SilenceEnabled() {
|
||||
t.Fail()
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
func TestEnvironmentMapEnabled(t *testing.T) {
|
||||
trueString := strconv.FormatBool(true)
|
||||
os.Setenv(env.ForceColor, trueString)
|
||||
|
|
Loading…
Reference in New Issue