summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/e2e/libpod_suite_test.go12
-rw-r--r--test/e2e/run_restart_test.go14
2 files changed, 26 insertions, 0 deletions
diff --git a/test/e2e/libpod_suite_test.go b/test/e2e/libpod_suite_test.go
index 10247f428..4d4f2905c 100644
--- a/test/e2e/libpod_suite_test.go
+++ b/test/e2e/libpod_suite_test.go
@@ -166,6 +166,18 @@ func (p *PodmanTest) Podman(args []string) *PodmanSession {
return &PodmanSession{session}
}
+
+//WaitForContainer waits on a started container
+func WaitForContainer(p *PodmanTest) bool {
+ for i := 0; i < 10; i++ {
+ if p.NumberOfContainers() == 1 {
+ return true
+ }
+ time.Sleep(1 * time.Second)
+ }
+ return false
+}
+
// Cleanup cleans up the temporary store
func (p *PodmanTest) Cleanup() {
// Remove all containers
diff --git a/test/e2e/run_restart_test.go b/test/e2e/run_restart_test.go
index 8737cf4f8..c55dfa1d3 100644
--- a/test/e2e/run_restart_test.go
+++ b/test/e2e/run_restart_test.go
@@ -36,4 +36,18 @@ var _ = Describe("Podman run restart containers", func() {
session2.WaitWithDefaultTimeout()
Expect(session2.ExitCode()).To(Equal(0))
})
+
+ It("Podman start after signal kill", func() {
+ session := podmanTest.RunTopContainer("test1")
+ ok := WaitForContainer(&podmanTest)
+ Expect(ok).To(BeTrue())
+
+ killSession := podmanTest.Podman([]string{"kill", "-s", "9", "test1"})
+ killSession.WaitWithDefaultTimeout()
+ Expect(killSession.ExitCode()).To(Equal(0))
+
+ session2 := podmanTest.Podman([]string{"start", "--attach", "test1"})
+ session2.WaitWithDefaultTimeout()
+ Expect(session2.ExitCode()).To(Equal(0))
+ })
})