summaryrefslogtreecommitdiff
path: root/test/apiv2/40-pods.at
blob: 2dea1918abb769efcffb8a9abecb9b4f9f9b77ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# -*- sh -*-
#
# test pod-related endpoints
#

t GET  "libpod/pods/json (clean slate at start)"   200 null

t POST libpod/pods/create name=foo 201 .Id~[0-9a-f]\\{64\\}
pod_id=$(jq -r .Id <<<"$output")
t GET  libpod/pods/foo/exists      204
t GET  libpod/pods/$pod_id/exists  204
t GET  libpod/pods/notfoo/exists   404
t GET  libpod/pods/foo/json        200 \
  .Name=foo  \
  .Id=$pod_id \
  .Containers\|length=1
t GET  libpod/pods/json            200 \
  .[0].Name=foo \
  .[0].Id=$pod_id \
  .[0].Containers\|length=1

# Cannot create a dup pod with the same name
t POST "libpod/pods/create (dup pod)" name=foo 409 \
  .cause="pod already exists"

#t POST libpod/pods/create a=b 400 .cause='bad parameter'  # FIXME: unimplemented

if root || have_cgroupsv2; then
    t POST libpod/pods/foo/pause   '' 200
else
    # Rootless cgroupsv1 : unsupported
    t POST "libpod/pods/foo/pause (rootless cgroups v1)" '' 500 \
      .cause="this container does not have a cgroup" \
      .message~".*pause pods containing rootless containers with cgroup V1"
fi
t POST  libpod/pods/foo/unpause '' 200
t POST "libpod/pods/foo/unpause (2nd unpause in a row)" '' 200
t POST "libpod/pods/foo/stop (pod is already stopped)"  '' 304
t POST  libpod/pods/foo/restart '' 200 \
  .Errs=null \
  .Id=$pod_id

t POST  "libpod/pods/bar/restart (restart on nonexistent pod)" '' 404

# FIXME: I'm not sure what 'prune' is supposed to do; as of 20200224 it
# just returns 200 (ok) with empty result list.
#t POST libpod/pods/prune ''    200     # FIXME: 2020-02-24 returns 200 {}
#t POST libpod/pods/prune 'a=b' 400     # FIXME: 2020-02-24 returns 200

# Clean up; and try twice, making sure that the second time fails
t DELETE  libpod/pods/foo 200
t DELETE "libpod/pods/foo (pod has already been deleted)" 404

# vim: filetype=sh