github.com/AliyunContainerService/cli@v0.0.0-20181009023821-814ced4b30d0/cmd/docker/docker_test.go (about) 1 package main 2 3 import ( 4 "io/ioutil" 5 "os" 6 "testing" 7 8 "github.com/docker/cli/cli/command" 9 "github.com/docker/cli/cli/debug" 10 "github.com/sirupsen/logrus" 11 "gotest.tools/assert" 12 is "gotest.tools/assert/cmp" 13 ) 14 15 func TestClientDebugEnabled(t *testing.T) { 16 defer debug.Disable() 17 18 cmd := newDockerCommand(&command.DockerCli{}) 19 cmd.Flags().Set("debug", "true") 20 21 err := cmd.PersistentPreRunE(cmd, []string{}) 22 assert.NilError(t, err) 23 assert.Check(t, is.Equal("1", os.Getenv("DEBUG"))) 24 assert.Check(t, is.Equal(logrus.DebugLevel, logrus.GetLevel())) 25 } 26 27 func TestExitStatusForInvalidSubcommandWithHelpFlag(t *testing.T) { 28 discard := ioutil.Discard 29 cmd := newDockerCommand(command.NewDockerCli(os.Stdin, discard, discard, false, nil)) 30 cmd.SetArgs([]string{"help", "invalid"}) 31 err := cmd.Execute() 32 assert.Error(t, err, "unknown help topic: invalid") 33 }