From 723e4428db6f145b3def1fd9ab21f95815d2a8fc Mon Sep 17 00:00:00 2001 From: Crazykev Date: Mon, 25 Apr 2016 16:05:24 +0800 Subject: [PATCH] modify kill test and mv it to issue Signed-off-by: Crazykev --- integration-cli/issue/hyper_cli_kill_test.go | 46 ++++++++++ integration-cli/todo/docker_cli_kill_test.go | 97 -------------------- 2 files changed, 46 insertions(+), 97 deletions(-) create mode 100644 integration-cli/issue/hyper_cli_kill_test.go delete mode 100644 integration-cli/todo/docker_cli_kill_test.go diff --git a/integration-cli/issue/hyper_cli_kill_test.go b/integration-cli/issue/hyper_cli_kill_test.go new file mode 100644 index 000000000..f360da256 --- /dev/null +++ b/integration-cli/issue/hyper_cli_kill_test.go @@ -0,0 +1,46 @@ +package main + +import ( + "fmt" + "net/http" + "strings" + + "github.com/docker/docker/pkg/integration/checker" + "github.com/go-check/check" +) + +func (s *DockerSuite) TestKillContainer(c *check.C) { + testRequires(c, DaemonIsLinux) + out, _ := dockerCmd(c, "run", "-d", "busybox", "top") + cleanedContainerID := strings.TrimSpace(out) + c.Assert(waitRun(cleanedContainerID), check.IsNil) + + dockerCmd(c, "kill", cleanedContainerID) + + out, _ = dockerCmd(c, "ps", "-q") + c.Assert(out, checker.Not(checker.Contains), cleanedContainerID, check.Commentf("killed container is still running")) + +} + +func (s *DockerSuite) TestKillofStoppedContainer(c *check.C) { + testRequires(c, DaemonIsLinux) + out, _ := dockerCmd(c, "run", "-d", "busybox", "top") + cleanedContainerID := strings.TrimSpace(out) + + dockerCmd(c, "stop", cleanedContainerID) + + _, _, err := dockerCmdWithError("kill", "-s", "30", cleanedContainerID) + c.Assert(err, check.Not(check.IsNil), check.Commentf("Container %s is not running", cleanedContainerID)) +} + +/* +func (s *DockerSuite) TestKillStoppedContainerAPIPre120(c *check.C) { + testRequires(c, DaemonIsLinux) + dockerCmd(c, "run", "--name", "docker-kill-test-api", "-d", "busybox", "top") + dockerCmd(c, "stop", "docker-kill-test-api") + + status, _, err := sockRequest("POST", fmt.Sprintf("/v1.19/containers/%s/kill", "docker-kill-test-api"), nil) + c.Assert(err, check.IsNil) + c.Assert(status, check.Equals, http.StatusNoContent) +} +*/ diff --git a/integration-cli/todo/docker_cli_kill_test.go b/integration-cli/todo/docker_cli_kill_test.go deleted file mode 100644 index f1a39e954..000000000 --- a/integration-cli/todo/docker_cli_kill_test.go +++ /dev/null @@ -1,97 +0,0 @@ -package main - -import ( - "fmt" - "net/http" - "strings" - - "github.com/docker/docker/pkg/integration/checker" - "github.com/go-check/check" -) - -func (s *DockerSuite) TestKillContainer(c *check.C) { - testRequires(c, DaemonIsLinux) - out, _ := dockerCmd(c, "run", "-d", "busybox", "top") - cleanedContainerID := strings.TrimSpace(out) - c.Assert(waitRun(cleanedContainerID), check.IsNil) - - dockerCmd(c, "kill", cleanedContainerID) - - out, _ = dockerCmd(c, "ps", "-q") - c.Assert(out, checker.Not(checker.Contains), cleanedContainerID, check.Commentf("killed container is still running")) - -} - -func (s *DockerSuite) TestKillofStoppedContainer(c *check.C) { - testRequires(c, DaemonIsLinux) - out, _ := dockerCmd(c, "run", "-d", "busybox", "top") - cleanedContainerID := strings.TrimSpace(out) - - dockerCmd(c, "stop", cleanedContainerID) - - _, _, err := dockerCmdWithError("kill", "-s", "30", cleanedContainerID) - c.Assert(err, check.Not(check.IsNil), check.Commentf("Container %s is not running", cleanedContainerID)) -} - -func (s *DockerSuite) TestKillDifferentUserContainer(c *check.C) { - testRequires(c, DaemonIsLinux) - out, _ := dockerCmd(c, "run", "-u", "daemon", "-d", "busybox", "top") - cleanedContainerID := strings.TrimSpace(out) - c.Assert(waitRun(cleanedContainerID), check.IsNil) - - dockerCmd(c, "kill", cleanedContainerID) - - out, _ = dockerCmd(c, "ps", "-q") - c.Assert(out, checker.Not(checker.Contains), cleanedContainerID, check.Commentf("killed container is still running")) - -} - -// regression test about correct signal parsing see #13665 -func (s *DockerSuite) TestKillWithSignal(c *check.C) { - testRequires(c, DaemonIsLinux) - out, _ := dockerCmd(c, "run", "-d", "busybox", "top") - cid := strings.TrimSpace(out) - c.Assert(waitRun(cid), check.IsNil) - - dockerCmd(c, "kill", "-s", "SIGWINCH", cid) - - running := inspectField(c, cid, "State.Running") - - c.Assert(running, checker.Equals, "true", check.Commentf("Container should be in running state after SIGWINCH")) -} - -func (s *DockerSuite) TestKillWithInvalidSignal(c *check.C) { - testRequires(c, DaemonIsLinux) - out, _ := dockerCmd(c, "run", "-d", "busybox", "top") - cid := strings.TrimSpace(out) - c.Assert(waitRun(cid), check.IsNil) - - out, _, err := dockerCmdWithError("kill", "-s", "0", cid) - c.Assert(err, check.NotNil) - c.Assert(out, checker.Contains, "Invalid signal: 0", check.Commentf("Kill with an invalid signal didn't error out correctly")) - - running := inspectField(c, cid, "State.Running") - c.Assert(running, checker.Equals, "true", check.Commentf("Container should be in running state after an invalid signal")) - - out, _ = dockerCmd(c, "run", "-d", "busybox", "top") - cid = strings.TrimSpace(out) - c.Assert(waitRun(cid), check.IsNil) - - out, _, err = dockerCmdWithError("kill", "-s", "SIG42", cid) - c.Assert(err, check.NotNil) - c.Assert(out, checker.Contains, "Invalid signal: SIG42", check.Commentf("Kill with an invalid signal error out correctly")) - - running = inspectField(c, cid, "State.Running") - c.Assert(running, checker.Equals, "true", check.Commentf("Container should be in running state after an invalid signal")) - -} - -func (s *DockerSuite) TestKillStoppedContainerAPIPre120(c *check.C) { - testRequires(c, DaemonIsLinux) - dockerCmd(c, "run", "--name", "docker-kill-test-api", "-d", "busybox", "top") - dockerCmd(c, "stop", "docker-kill-test-api") - - status, _, err := sockRequest("POST", fmt.Sprintf("/v1.19/containers/%s/kill", "docker-kill-test-api"), nil) - c.Assert(err, check.IsNil) - c.Assert(status, check.Equals, http.StatusNoContent) -}