Merge #6436 from ZyX-I/restart-includes-cleanup

Clean-up before restarting single-includes test
This commit is contained in:
Justin M. Keyes
2017-04-04 14:16:14 +02:00
committed by GitHub
2 changed files with 25 additions and 3 deletions

View File

@@ -57,13 +57,21 @@ run_test() {
run_test_wd() {
local timeout="$1"
test $# -gt 0 && shift
local cmd="$1"
test $# -gt 0 && shift
local restart_cmd="$1"
: ${restart_cmd:=true}
test $# -gt 0 && shift
local test_name="$1"
: ${test_name:=$cmd}
test $# -gt 0 && shift
local output_file="$(mktemp)"
local status_file="$(mktemp)"
local restarts=5
local prev_tmpsize=-1
while test $restarts -gt 0 ; do
@@ -88,10 +96,16 @@ run_test_wd() {
break
fi
done
restarts=$[ restarts - 1 ]
if test "$(stat -c "%s" "$status_file")" -eq 0 ; then
# status file not updated, assuming hang
kill -KILL $pid
echo "Test ${test_name} hang up, restarting"
if test $restarts -eq 0 ; then
fail "${test_name}" E "Test hang up"
else
echo "Test ${test_name} hang up, restarting"
eval "$restart_cmd"
fi
else
local new_failed="$(cat "$status_file")"
if test "x$new_failed" != "x0" ; then
@@ -99,7 +113,6 @@ run_test_wd() {
fi
return 0
fi
restarts=$[ restarts - 1 ]
done
}

View File

@@ -12,8 +12,17 @@ enter_suite 'lint'
set -x
csi_clean() {
find "${BUILD_DIR}/bin" -name 'test-includes-*' -delete
find "${BUILD_DIR}" -name '*test-include*.o' -delete
}
run_test 'top_make clint-full' clint
run_test 'top_make testlint' testlint
run_test_wd 5s 'top_make check-single-includes' single-includes
CLICOLOR_FORCE=1 run_test_wd \
5s \
'top_make check-single-includes' \
'csi_clean' \
single-includes
exit_suite