mirror of https://github.com/docker/cli.git
Fix stream for 'nothing found in stack' message
Signed-off-by: Daniel Nephin <dnephin@docker.com>
This commit is contained in:
parent
30933b516b
commit
fb6deb1077
|
@ -58,7 +58,7 @@ func runPS(dockerCli command.Cli, options psOptions) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(tasks) == 0 {
|
if len(tasks) == 0 {
|
||||||
fmt.Fprintf(dockerCli.Out(), "Nothing found in stack: %s\n", namespace)
|
fmt.Fprintf(dockerCli.Err(), "Nothing found in stack: %s\n", namespace)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -53,15 +53,20 @@ func TestStackPsErrors(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestStackPsEmptyStack(t *testing.T) {
|
func TestStackPsEmptyStack(t *testing.T) {
|
||||||
buf := new(bytes.Buffer)
|
out := new(bytes.Buffer)
|
||||||
cmd := newPsCommand(test.NewFakeCli(&fakeClient{
|
stderr := new(bytes.Buffer)
|
||||||
|
fakeCli := test.NewFakeCli(&fakeClient{
|
||||||
taskListFunc: func(options types.TaskListOptions) ([]swarm.Task, error) {
|
taskListFunc: func(options types.TaskListOptions) ([]swarm.Task, error) {
|
||||||
return []swarm.Task{}, nil
|
return []swarm.Task{}, nil
|
||||||
},
|
},
|
||||||
}, buf))
|
}, out)
|
||||||
|
fakeCli.SetErr(stderr)
|
||||||
|
cmd := newPsCommand(fakeCli)
|
||||||
cmd.SetArgs([]string{"foo"})
|
cmd.SetArgs([]string{"foo"})
|
||||||
|
|
||||||
assert.NoError(t, cmd.Execute())
|
assert.NoError(t, cmd.Execute())
|
||||||
testutil.EqualNormalizedString(t, testutil.RemoveSpace, buf.String(), "Nothing found in stack: foo")
|
assert.Equal(t, "", out.String())
|
||||||
|
assert.Equal(t, "Nothing found in stack: foo\n", stderr.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestStackPsWithQuietOption(t *testing.T) {
|
func TestStackPsWithQuietOption(t *testing.T) {
|
||||||
|
|
|
@ -72,7 +72,7 @@ func runRemove(dockerCli command.Cli, opts removeOptions) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(services)+len(networks)+len(secrets)+len(configs) == 0 {
|
if len(services)+len(networks)+len(secrets)+len(configs) == 0 {
|
||||||
fmt.Fprintf(dockerCli.Out(), "Nothing found in stack: %s\n", namespace)
|
fmt.Fprintf(dockerCli.Err(), "Nothing found in stack: %s\n", namespace)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -56,8 +56,9 @@ func TestRemoveStack(t *testing.T) {
|
||||||
assert.Equal(t, allConfigIDs, cli.removedConfigs)
|
assert.Equal(t, allConfigIDs, cli.removedConfigs)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestSkipEmptyStack(t *testing.T) {
|
func TestRemoveStackSkipEmpty(t *testing.T) {
|
||||||
buf := new(bytes.Buffer)
|
out := new(bytes.Buffer)
|
||||||
|
stderr := new(bytes.Buffer)
|
||||||
allServices := []string{objectName("bar", "service1"), objectName("bar", "service2")}
|
allServices := []string{objectName("bar", "service1"), objectName("bar", "service2")}
|
||||||
allServiceIDs := buildObjectIDs(allServices)
|
allServiceIDs := buildObjectIDs(allServices)
|
||||||
|
|
||||||
|
@ -70,21 +71,24 @@ func TestSkipEmptyStack(t *testing.T) {
|
||||||
allConfigs := []string{objectName("bar", "config1")}
|
allConfigs := []string{objectName("bar", "config1")}
|
||||||
allConfigIDs := buildObjectIDs(allConfigs)
|
allConfigIDs := buildObjectIDs(allConfigs)
|
||||||
|
|
||||||
cli := &fakeClient{
|
fakeClient := &fakeClient{
|
||||||
services: allServices,
|
services: allServices,
|
||||||
networks: allNetworks,
|
networks: allNetworks,
|
||||||
secrets: allSecrets,
|
secrets: allSecrets,
|
||||||
configs: allConfigs,
|
configs: allConfigs,
|
||||||
}
|
}
|
||||||
cmd := newRemoveCommand(test.NewFakeCli(cli, buf))
|
fakeCli := test.NewFakeCli(fakeClient, out)
|
||||||
|
fakeCli.SetErr(stderr)
|
||||||
|
cmd := newRemoveCommand(fakeCli)
|
||||||
cmd.SetArgs([]string{"foo", "bar"})
|
cmd.SetArgs([]string{"foo", "bar"})
|
||||||
|
|
||||||
assert.NoError(t, cmd.Execute())
|
assert.NoError(t, cmd.Execute())
|
||||||
assert.Contains(t, buf.String(), "Nothing found in stack: foo")
|
assert.Equal(t, "", out.String())
|
||||||
assert.Equal(t, allServiceIDs, cli.removedServices)
|
assert.Contains(t, stderr.String(), "Nothing found in stack: foo\n")
|
||||||
assert.Equal(t, allNetworkIDs, cli.removedNetworks)
|
assert.Equal(t, allServiceIDs, fakeClient.removedServices)
|
||||||
assert.Equal(t, allSecretIDs, cli.removedSecrets)
|
assert.Equal(t, allNetworkIDs, fakeClient.removedNetworks)
|
||||||
assert.Equal(t, allConfigIDs, cli.removedConfigs)
|
assert.Equal(t, allSecretIDs, fakeClient.removedSecrets)
|
||||||
|
assert.Equal(t, allConfigIDs, fakeClient.removedConfigs)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestRemoveContinueAfterError(t *testing.T) {
|
func TestRemoveContinueAfterError(t *testing.T) {
|
||||||
|
|
|
@ -51,11 +51,9 @@ func runServices(dockerCli command.Cli, options servicesOptions) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
out := dockerCli.Out()
|
|
||||||
|
|
||||||
// if no services in this stack, print message and exit 0
|
// if no services in this stack, print message and exit 0
|
||||||
if len(services) == 0 {
|
if len(services) == 0 {
|
||||||
fmt.Fprintf(out, "Nothing found in stack: %s\n", options.namespace)
|
fmt.Fprintf(dockerCli.Err(), "Nothing found in stack: %s\n", options.namespace)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -83,17 +83,19 @@ func TestStackServicesErrors(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestStackServicesEmptyServiceList(t *testing.T) {
|
func TestStackServicesEmptyServiceList(t *testing.T) {
|
||||||
buf := new(bytes.Buffer)
|
out := new(bytes.Buffer)
|
||||||
cmd := newServicesCommand(
|
stderr := new(bytes.Buffer)
|
||||||
test.NewFakeCli(&fakeClient{
|
fakeCli := test.NewFakeCli(&fakeClient{
|
||||||
serviceListFunc: func(options types.ServiceListOptions) ([]swarm.Service, error) {
|
serviceListFunc: func(options types.ServiceListOptions) ([]swarm.Service, error) {
|
||||||
return []swarm.Service{}, nil
|
return []swarm.Service{}, nil
|
||||||
},
|
},
|
||||||
}, buf),
|
}, out)
|
||||||
)
|
fakeCli.SetErr(stderr)
|
||||||
|
cmd := newServicesCommand(fakeCli)
|
||||||
cmd.SetArgs([]string{"foo"})
|
cmd.SetArgs([]string{"foo"})
|
||||||
assert.NoError(t, cmd.Execute())
|
assert.NoError(t, cmd.Execute())
|
||||||
testutil.EqualNormalizedString(t, testutil.RemoveSpace, buf.String(), "Nothing found in stack: foo")
|
assert.Equal(t, "", out.String())
|
||||||
|
assert.Equal(t, "Nothing found in stack: foo\n", stderr.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestStackServicesWithQuietOption(t *testing.T) {
|
func TestStackServicesWithQuietOption(t *testing.T) {
|
||||||
|
|
Loading…
Reference in New Issue