Merge pull request #1259 from martin-schulze-vireso/bugfix/no_error_printed_on_timeout

Fix missing error output from timeout
This commit is contained in:
Erik Wramner 2019-09-11 14:04:04 +02:00 committed by GitHub
commit ca821fa51a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 2 deletions

View File

@ -9,7 +9,7 @@ TEST_TIMEOUT_IN_SECONDS=${TEST_TIMEOUT_IN_SECONDS-120}
function repeat_until_success_or_timeout {
if ! [[ "$1" =~ ^[0-9]+$ ]]; then
echo "First parameter for timeout must be an integer, recieved \"$1\""
exit 1
return 1
fi
TIMEOUT=$1
STARTTIME=$SECONDS
@ -19,7 +19,7 @@ function repeat_until_success_or_timeout {
sleep 5
if [[ $(($SECONDS - $STARTTIME )) -gt $TIMEOUT ]]; then
echo "Timed out on command: $@"
exit 1
return 1
fi
done
}
@ -34,16 +34,26 @@ function wait_for_finished_setup_in_container() {
repeat_until_success_or_timeout $TEST_TIMEOUT_IN_SECONDS sh -c "docker logs $1 | grep 'is up and running'"
}
SETUP_FILE_MARKER="$BATS_TMPDIR/`basename \"$BATS_TEST_FILENAME\".setup_file`"
# use in setup() in conjunction with a `@test "first" {}` to trigger setup_file reliably
function run_setup_file_if_necessary() {
if [ "$BATS_TEST_NAME" == 'test_first' ]; then
rm -f "$SETUP_FILE_MARKE"
setup_file
touch "$SETUP_FILE_MARKER"
else
if [ ! -f "$SETUP_FILE_MARKER" ]; then
skip "setup_file failed"
return 1
fi
fi
}
# use in teardown() in conjunction with a `@test "last" {}` to trigger teardown_file reliably
function run_teardown_file_if_necessary() {
if [ "$BATS_TEST_NAME" == 'test_last' ]; then
rm -f "$SETUP_FILE_MARKE"
teardown_file
fi
}