提交 49713c41 编写于 作者: K Kevin Wolf

tests/multiboot: Test exit code for every qemu run

Testing the exit code only once after a whole group of tests has
completed is not enough, it catches errors only in the very last qemu
invocation. We need to have the check after each qemu run.

The logging and diff with the reference output is still done once per
group to keep things more managable. This is not a problem because the
log file accumulates the output of all runs.
Signed-off-by: NKevin Wolf <kwolf@redhat.com>
Reviewed-by: NJack Schwartz <jack.schwartz@oracle.com>
上级 dbf2dce7
......@@ -38,6 +38,17 @@ run_qemu() {
ret=$?
cat test.out >> test.log
debugexit=$((ret & 0x1))
ret=$((ret >> 1))
if [ $debugexit != 1 ]; then
printf %b "\e[31m ?? \e[0m $kernel $* (no debugexit used, exit code $ret)\n"
pass=0
elif [ $ret != 0 ]; then
printf %b "\e[31mFAIL\e[0m $kernel $* (exit code $ret)\n"
pass=0
fi
}
mmap() {
......@@ -61,19 +72,8 @@ make all
for t in mmap modules; do
echo > test.log
$t
debugexit=$((ret & 0x1))
ret=$((ret >> 1))
pass=1
if [ $debugexit != 1 ]; then
printf %b "\e[31m ?? \e[0m $t (no debugexit used, exit code $ret)\n"
pass=0
elif [ $ret != 0 ]; then
printf %b "\e[31mFAIL\e[0m $t (exit code $ret)\n"
pass=0
fi
$t
if ! diff $t.out test.log > /dev/null 2>&1; then
printf %b "\e[31mFAIL\e[0m $t (output difference)\n"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册