docs/test/integration/api/pull.bats

62 lines
1.3 KiB
Bash

#!/usr/bin/env bats
load ../helpers
function teardown() {
swarm_manage_cleanup
stop_docker
}
@test "docker pull" {
start_docker 2
swarm_manage
# make sure no image exists
run docker_swarm images -q
[ "$status" -eq 0 ]
[ "${#lines[@]}" -eq 0 ]
docker_swarm pull busybox
# with grouping, we should get 1 busybox, plus the header.
run docker_swarm images
[ "$status" -eq 0 ]
[ "${#lines[@]}" -eq 2 ]
# every line should contain "busybox" exclude the first head line
for((i=1; i<${#lines[@]}; i++)); do
[[ "${lines[i]}" == *"busybox"* ]]
done
# verify on the nodes
for host in ${HOSTS[@]}; do
run docker -H $host images
[ "$status" -eq 0 ]
[ "${#lines[@]}" -ge 2 ]
[[ "${lines[1]}" == *"busybox"* ]]
done
}
@test "docker pull with image digest" {
start_docker 2
swarm_manage
# make sure no image exists
run docker_swarm images -q
[ "$status" -eq 0 ]
[ "${#lines[@]}" -eq 0 ]
docker_swarm pull jimmyxian/busybox@sha256:649374debd26307573564fcf9748d39db33ef61fbf88ee84c3af10fd7e08765d
run docker_swarm images --digests
[ "$status" -eq 0 ]
[[ "${output}" == *"sha256:649374debd26307573564fcf9748d39db33ef61fbf88ee84c3af10fd7e08765d"* ]]
}
@test "docker pull -check error code" {
start_docker 2
swarm_manage
run docker_swarm pull does_not_exist
[ "$status" -eq 1 ]
}