summaryrefslogtreecommitdiff
path: root/test/apiv2
diff options
context:
space:
mode:
authorEd Santiago <santiago@redhat.com>2020-03-03 06:36:09 -0700
committerEd Santiago <santiago@redhat.com>2020-03-03 06:40:27 -0700
commit88cd6488166bc799645efac8f2df389a352b2653 (patch)
tree38bb19acd8df8c8fefd0562902d084958bc06f67 /test/apiv2
parent1641ee61802ad5e13a9ddf0a20099fe31f73768d (diff)
downloadpodman-88cd6488166bc799645efac8f2df389a352b2653.tar.gz
podman-88cd6488166bc799645efac8f2df389a352b2653.tar.bz2
podman-88cd6488166bc799645efac8f2df389a352b2653.zip
APIv2 tests: add tests for stop
...and allow status 'stopped' in addition to 'exited'. Fixes: #5336 Signed-off-by: Ed Santiago <santiago@redhat.com>
Diffstat (limited to 'test/apiv2')
-rw-r--r--test/apiv2/20-containers.at2
-rw-r--r--test/apiv2/22-stop.at24
2 files changed, 25 insertions, 1 deletions
diff --git a/test/apiv2/20-containers.at b/test/apiv2/20-containers.at
index a69e8cc99..3a5d5a398 100644
--- a/test/apiv2/20-containers.at
+++ b/test/apiv2/20-containers.at
@@ -22,7 +22,7 @@ t GET libpod/containers/json?all=true 200 \
.[0].Id~[0-9a-f]\\{12\\} \
.[0].Image=$IMAGE \
.[0].Command[0]="true" \
- .[0].State=exited \
+ .[0].State~\\\(exited\\\|stopped\\\) \
.[0].ExitCode=0 \
.[0].IsInfra=false
diff --git a/test/apiv2/22-stop.at b/test/apiv2/22-stop.at
new file mode 100644
index 000000000..11318ca81
--- /dev/null
+++ b/test/apiv2/22-stop.at
@@ -0,0 +1,24 @@
+# -*- sh -*-
+#
+# test 'stop' endpoints
+#
+
+podman pull $IMAGE &>/dev/null
+
+# stop, by name
+podman run -dt --name mytop $IMAGE top &>/dev/null
+
+t GET libpod/containers/mytop/json 200 .State.Status=running
+t POST libpod/containers/mytop/stop "" 204
+t GET libpod/containers/mytop/json 200 .State.Status~\\\(exited\\\|stopped\\\)
+t DELETE libpod/containers/mytop 204
+
+# stop, by ID
+# Remember that podman() hides all output; we need to get our CID via inspect
+podman run -dt --name mytop $IMAGE top
+
+t GET libpod/containers/mytop/json 200 .State.Status=running
+cid=$(jq -r .Id <<<"$output")
+t POST libpod/containers/$cid/stop "" 204
+t GET libpod/containers/mytop/json 200 .State.Status~\\\(exited\\\|stopped\\\)
+t DELETE libpod/containers/mytop 204