tests: don't leave temporary files at end of test

Message ID 1507675192-70000-1-git-send-email-adilger@dilger.ca
State Accepted
Headers show
Series
  • tests: don't leave temporary files at end of test
Related show

Commit Message

Andreas Dilger Oct. 10, 2017, 10:39 p.m.
Don't leave temp files around after test has completed successfully.
Some test scripts were creating their own temporary files, and in
some cases test_one was skipping a test completely (e.g. slow) after
the temp file had been created.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
---
 tests/d_fallocate/script          | 2 +-
 tests/d_fallocate_bigalloc/script | 2 +-
 tests/d_xattr_edits/script        | 2 +-
 tests/test_one.in                 | 6 +++---
 4 files changed, 6 insertions(+), 6 deletions(-)

Comments

Theodore Ts'o Oct. 15, 2017, 8:22 p.m. | #1
On Tue, Oct 10, 2017 at 04:39:52PM -0600, Andreas Dilger wrote:
> Don't leave temp files around after test has completed successfully.
> Some test scripts were creating their own temporary files, and in
> some cases test_one was skipping a test completely (e.g. slow) after
> the temp file had been created.
> 
> Signed-off-by: Andreas Dilger <adilger@dilger.ca>

Thanks, applied.  I fixed up two more tests (d_inline_dump and
f_mke2fs_baddisk) which could leave behind a temp file if the tests
are skipped in a separate commit.

						- Ted

Patch

diff --git a/tests/d_fallocate/script b/tests/d_fallocate/script
index ae8956e..b3982a3 100644
--- a/tests/d_fallocate/script
+++ b/tests/d_fallocate/script
@@ -165,8 +165,8 @@  if [ "$status" = 0 ] ; then
 else
 	echo "$test_name: $test_description: failed"
 	diff $DIFF_OPTS $EXP $OUT > $test_name.failed
-	rm -f $test_name.tmp
 fi
+rm -f $EXP
 
 unset IMAGE FSCK_OPT OUT EXP
 
diff --git a/tests/d_fallocate_bigalloc/script b/tests/d_fallocate_bigalloc/script
index 6b6bf97..9022a2b 100644
--- a/tests/d_fallocate_bigalloc/script
+++ b/tests/d_fallocate_bigalloc/script
@@ -166,8 +166,8 @@  if [ "$status" = 0 ] ; then
 else
 	echo "$test_name: $test_description: failed"
 	diff $DIFF_OPTS $EXP $OUT > $test_name.failed
-	rm -f $test_name.tmp
 fi
+rm -f $EXP
 
 unset IMAGE FSCK_OPT OUT EXP
 
diff --git a/tests/d_xattr_edits/script b/tests/d_xattr_edits/script
index df2a530..cd9d039 100644
--- a/tests/d_xattr_edits/script
+++ b/tests/d_xattr_edits/script
@@ -122,7 +122,7 @@  sed -f $cmd_dir/filter.sed $OUT.new >> $OUT
 # Do the verification
 #
 
-rm -f $TMPFILE $OUT.new
+rm -f $TMPFILE $OUT.new $TEST_DATA $VERIFY_DATA
 cmp -s $OUT $EXP
 status=$?
 
diff --git a/tests/test_one.in b/tests/test_one.in
index 9bf1185..c1f18dc 100644
--- a/tests/test_one.in
+++ b/tests/test_one.in
@@ -36,9 +36,6 @@  fi
 
 test_name=`echo $test_dir | sed -e 's;.*/;;'`
 
-TMPFILE=$(mktemp ${TMPDIR:-/tmp}/e2fsprogs-tmp-$test_name.XXXXXX)
-trap 'rm -f $TMPFILE ; exit' 1 2 15
-
 if [ -f $test_dir ] ; then
 	exit 0;
 fi
@@ -63,6 +60,9 @@  fi
 rm -f $test_name.ok $test_name.failed
 #echo -e -n "$test_name: $test_description:\r"
 
+TMPFILE=$(mktemp ${TMPDIR:-/tmp}/e2fsprogs-tmp-$test_name.XXXXXX)
+trap 'rm -f $TMPFILE ; exit' 1 2 15
+
 start=$SECONDS
 if [ -f $test_dir/script ]; then
 	. $test_dir/script