summaryrefslogtreecommitdiff
path: root/test/apiv2/test-apiv2
diff options
context:
space:
mode:
authorEd Santiago <santiago@redhat.com>2020-10-12 13:31:07 -0600
committerEd Santiago <santiago@redhat.com>2020-10-12 13:57:59 -0600
commit2a6a3f333bd5c5968e34596c1c6ed93181a5da10 (patch)
tree415f702754cf5e0b40d0083af4486edc64f92693 /test/apiv2/test-apiv2
parent5801a3048754a4e1ebedc884be9bd42c55892c4c (diff)
downloadpodman-2a6a3f333bd5c5968e34596c1c6ed93181a5da10.tar.gz
podman-2a6a3f333bd5c5968e34596c1c6ed93181a5da10.tar.bz2
podman-2a6a3f333bd5c5968e34596c1c6ed93181a5da10.zip
APIv2 tests: try again to fix them
CI discovered that a lot of networking tests are failing; my fault, for not having run my tests as root on my laptop. Disable those. Also: bump up the ten-request time limit, from 5 to 7 seconds. Looks like something keeps getting slower and slower, but I guess there's not much we can do about it. Also: when we get a mismatch response code (e.g. 500 when we expect 200), dump the response body and skip any subsequent response checks. Signed-off-by: Ed Santiago <santiago@redhat.com>
Diffstat (limited to 'test/apiv2/test-apiv2')
-rwxr-xr-xtest/apiv2/test-apiv219
1 files changed, 19 insertions, 0 deletions
diff --git a/test/apiv2/test-apiv2 b/test/apiv2/test-apiv2
index e9b5f245c..78325eb24 100755
--- a/test/apiv2/test-apiv2
+++ b/test/apiv2/test-apiv2
@@ -111,6 +111,14 @@ function _show_ok() {
_bump $testcounter_file
count=$(<$testcounter_file)
+
+ # "skip" is a special case of "ok". Assume that our caller has included
+ # the magical '# skip - reason" comment string.
+ if [[ $ok == "skip" ]]; then
+ # colon-plus: replace green with yellow, but only if green is non-null
+ green="${green:+\e[33m}"
+ ok=1
+ fi
if [ $ok -eq 1 ]; then
echo -e "${green}ok $count ${TEST_CONTEXT} $testname${reset}"
echo "ok $count ${TEST_CONTEXT} $testname" >>$LOG
@@ -241,6 +249,17 @@ function t() {
fi
local i
+
+ # Special case: if response code does not match, dump the response body
+ # and skip all further subtests.
+ if [[ $actual_code != $expected_code ]]; then
+ echo -e "# response: $output"
+ for i; do
+ _show_ok skip "$testname: $i # skip - wrong return code"
+ done
+ return
+ fi
+
for i; do
if expr "$i" : "[^=~]\+=.*" >/dev/null; then
# Exact match on json field