| 14 | ) |
| 15 | |
| 16 | func TestRunKill(t *testing.T) { |
| 17 | cli := test.NewFakeCli(&fakeClient{ |
| 18 | containerKillFunc: func(ctx context.Context, container string, options client.ContainerKillOptions) (client.ContainerKillResult, error) { |
| 19 | assert.Assert(t, is.Equal(options.Signal, "STOP")) |
| 20 | return client.ContainerKillResult{}, nil |
| 21 | }, |
| 22 | }) |
| 23 | |
| 24 | cmd := newKillCommand(cli) |
| 25 | cmd.SetOut(io.Discard) |
| 26 | |
| 27 | cmd.SetArgs([]string{ |
| 28 | "--signal", "STOP", |
| 29 | "container-id-1", |
| 30 | "container-id-2", |
| 31 | }) |
| 32 | err := cmd.Execute() |
| 33 | assert.NilError(t, err) |
| 34 | |
| 35 | containerIDs := strings.SplitN(cli.OutBuffer().String(), "\n", 2) |
| 36 | assert.Assert(t, is.Len(containerIDs, 2)) |
| 37 | |
| 38 | containerID1 := strings.TrimSpace(containerIDs[0]) |
| 39 | containerID2 := strings.TrimSpace(containerIDs[1]) |
| 40 | |
| 41 | assert.Check(t, is.Equal(containerID1, "container-id-1")) |
| 42 | assert.Check(t, is.Equal(containerID2, "container-id-2")) |
| 43 | } |
| 44 | |
| 45 | func TestRunKillClientError(t *testing.T) { |
| 46 | cli := test.NewFakeCli(&fakeClient{ |