mirror of
https://github.com/containers/podman.git
synced 2025-10-10 07:45:08 +08:00

Add alpine and busybox as the two seeded images that can be put into the tests' storage without the need to pull it over the network. Add the following to the kpod_TEST.bats file: function setup() { copy_images } Also, export several image names for shorter reference: * BB -> docker.io/library/busybox:latest * BB_GLIBC -> docker.io/library/busybox:glibc * ALPINE -> docker.io/library/alpine:latest * FEDORA_MINIMAL -> registry.fedoraproject.org/fedora-minimal:latest And finally, there were two pervasive changes I made in tests: * Because we use temporary storage, we do not need to rmi at the end of each test * We no longer need to pull most images because they are added via copy_images Signed-off-by: baude <bbaude@redhat.com> Closes: #43 Approved by: mheon
114 lines
3.1 KiB
Bash
114 lines
3.1 KiB
Bash
#!/usr/bin/env bats
|
|
|
|
load helpers
|
|
|
|
function teardown() {
|
|
cleanup_test
|
|
}
|
|
|
|
function setup() {
|
|
copy_images
|
|
}
|
|
|
|
@test "stats single output" {
|
|
skip "Test needs to be converted to kpod run"
|
|
start_crio
|
|
run crioctl pod run --config "$TESTDATA"/sandbox_config.json
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
pod_id="$output"
|
|
run crioctl ctr create --config "$TESTDATA"/container_redis.json --pod "$pod_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
ctr_id="$output"
|
|
run crioctl ctr start --id "$ctr_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
run bash -c ${KPOD_BINARY} ${KPOD_OPTIONS} stats --no-stream "$ctr_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
cleanup_ctrs
|
|
cleanup_pods
|
|
stop_crio
|
|
}
|
|
|
|
@test "stats does not output stopped container" {
|
|
skip "Test needs to be converted to kpod run"
|
|
start_crio
|
|
run crioctl pod run --config "$TESTDATA"/sandbox_config.json
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
pod_id="$output"
|
|
run crioctl ctr create --config "$TESTDATA"/container_redis.json --pod "$pod_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
ctr_id="$output"
|
|
run bash -c ${KPOD_BINARY} ${KPOD_OPTIONS} stats --no-stream
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
cleanup_ctrs
|
|
cleanup_pods
|
|
stop_crio
|
|
}
|
|
|
|
@test "stats outputs stopped container with all flag" {
|
|
skip "Test needs to be converted to kpod run"
|
|
start_crio
|
|
run crioctl pod run --config "$TESTDATA"/sandbox_config.json
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
pod_id="$output"
|
|
run crioctl ctr create --config "$TESTDATA"/container_redis.json --pod "$pod_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
ctr_id="$output"
|
|
run bash -c ${KPOD_BINARY} ${KPOD_OPTIONS} stats --no-stream --all
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
cleanup_ctrs
|
|
cleanup_pods
|
|
stop_crio
|
|
}
|
|
|
|
@test "stats output only id" {
|
|
skip "Test needs to be converted to kpod run"
|
|
start_crio
|
|
run crioctl pod run --config "$TESTDATA"/sandbox_config.json
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
pod_id="$output"
|
|
run crioctl ctr create --config "$TESTDATA"/container_redis.json --pod "$pod_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
ctr_id="$output"
|
|
run crioctl ctr start --id "$ctr_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
run bash -c ${KPOD_BINARY} ${KPOD_OPTIONS} stats --no-stream --format {{.ID}} "$ctr_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
# once ps is implemented, run ps -q and see if that equals the output from above
|
|
cleanup_ctrs
|
|
cleanup_pods
|
|
stop_crio
|
|
}
|
|
|
|
@test "stats streaming output" {
|
|
skip "Test needs to be converted to kpod run"
|
|
start_crio
|
|
run crioctl pod run --config "$TESTDATA"/sandbox_config.json
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
pod_id="$output"
|
|
run crioctl ctr create --config "$TESTDATA"/container_redis.json --pod "$pod_id"
|
|
echo "$output"
|
|
[ "$status" -eq 0 ]
|
|
ctr_id="$output"
|
|
run timeout 5s bash -c "${KPOD_BINARY} ${KPOD_OPTIONS} stats --all"
|
|
echo "$output"
|
|
[ "$status" -eq 124 ] #124 is the status set by timeout when it has to kill the command at the end of the given time
|
|
cleanup_ctrs
|
|
cleanup_pods
|
|
stop_crio
|
|
}
|