mirror of
https://github.com/containers/podman.git
synced 2025-06-02 02:26:52 +08:00
new system tests under BATS
Initial attempt at writing a framework for podman system tests. The idea is to define a useful set of primitives that will make it easy to write actual tests and to interpret results of failing ones. This is a proof-of-concept right now; only a small number of tests, by no means comprehensive. I am requesting review in order to find showstopper problems: reasons why this approach cannot work. Should there be none, we can work toward running these as gating tests for Fedora and RHEL8. Signed-off-by: Ed Santiago <santiago@redhat.com>
This commit is contained in:
38
test/system/001-basic.bats
Normal file
38
test/system/001-basic.bats
Normal file
@ -0,0 +1,38 @@
|
||||
#!/usr/bin/env bats
|
||||
#
|
||||
# Simplest set of podman tests. If any of these fail, we have serious problems.
|
||||
#
|
||||
|
||||
load helpers
|
||||
|
||||
# Override standard setup! We don't yet trust podman-images or podman-rm
|
||||
function setup() {
|
||||
:
|
||||
}
|
||||
|
||||
@test "podman version emits reasonable output" {
|
||||
run_podman version
|
||||
|
||||
is "${lines[0]}" "Version:[ ]\+[1-9][0-9.]\+" "Version line 1"
|
||||
|
||||
is "$output" ".*Go Version: \+" "'Go Version' in output"
|
||||
|
||||
# FIXME: enable for 1.1
|
||||
# is "$output" ".*RemoteAPI Version: \+" "API version in output"
|
||||
}
|
||||
|
||||
|
||||
@test "podman can pull an image" {
|
||||
run_podman pull $PODMAN_TEST_IMAGE_FQN
|
||||
}
|
||||
|
||||
# This is for development only; it's intended to make sure our timeout
|
||||
# in run_podman continues to work. This test should never run in production
|
||||
# because it will, by definition, fail.
|
||||
@test "timeout" {
|
||||
if [ -z "$PODMAN_RUN_TIMEOUT_TEST" ]; then
|
||||
skip "define \$PODMAN_RUN_TIMEOUT_TEST to enable this test"
|
||||
fi
|
||||
PODMAN_TIMEOUT=10 run_podman run $PODMAN_TEST_IMAGE_FQN sleep 90
|
||||
echo "*** SHOULD NEVER GET HERE"
|
||||
}
|
Reference in New Issue
Block a user