Now that ./check takes care of cleaning up after each tests, it can also selectively not clean up. Add option to leave all output from tests intact if that test encountered an error.
Note: this currently only works for bash tests, as the python tests still clean up after themselves manually. Signed-off-by: Jeff Cody <jc...@redhat.com> --- tests/qemu-iotests/check | 5 ++++- tests/qemu-iotests/common | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check index 20cb93d..48d206c 100755 --- a/tests/qemu-iotests/check +++ b/tests/qemu-iotests/check @@ -381,7 +381,10 @@ do fi fi - rm -rf "$TEST_DIR_SEQ" + if [ "$save_on_err" != "true" ] || [ "$err" != "true" ] + then + rm -rf "$TEST_DIR_SEQ" + fi fi diff --git a/tests/qemu-iotests/common b/tests/qemu-iotests/common index d34c11c..d08b233 100644 --- a/tests/qemu-iotests/common +++ b/tests/qemu-iotests/common @@ -42,6 +42,7 @@ expunge=true have_test_arg=false randomize=false cachemode=false +save_on_err=false rm -f $tmp.list $tmp.tmp $tmp.sed export IMGFMT=raw @@ -172,6 +173,7 @@ other options -T output timestamps -r randomize test order -c mode cache mode + -s save test scratch directory on test failure testlist options -g group[,group...] include tests from these groups @@ -349,6 +351,10 @@ testlist options xgroup=true xpand=false ;; + -s) + save_on_err=true + xpand=false + ;; '[0-9][0-9][0-9] [0-9][0-9][0-9][0-9]') echo "No tests?" status=1 -- 2.9.4