public inbox for fstests@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: fstests@vger.kernel.org
Subject: [PATCH 8/8] xfs: convert some tests to new setup preamble
Date: Wed, 27 Jun 2018 18:21:03 +1000	[thread overview]
Message-ID: <20180627082103.9662-9-david@fromorbit.com> (raw)
In-Reply-To: <20180627082103.9662-1-david@fromorbit.com>

From: Dave Chinner <dchinner@redhat.com>

Small initial batch to demonstrate conversion.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
---
 tests/xfs/001 | 38 ++++++++++++--------------------------
 tests/xfs/002 | 35 ++++++++++-------------------------
 tests/xfs/003 | 19 ++++++++-----------
 tests/xfs/004 | 43 ++++++++++++++-----------------------------
 tests/xfs/005 | 30 +++++++-----------------------
 tests/xfs/006 | 27 ++++++---------------------
 tests/xfs/007 | 30 +++++++-----------------------
 tests/xfs/008 | 42 +++++++++++++++---------------------------
 tests/xfs/009 | 46 +++++++++++++++++++---------------------------
 9 files changed, 98 insertions(+), 212 deletions(-)

diff --git a/tests/xfs/001 b/tests/xfs/001
index ac86c3b1e484..fc61d6e8b284 100755
--- a/tests/xfs/001
+++ b/tests/xfs/001
@@ -8,20 +8,19 @@
 # write the value 0, each bit and finally the entry beyond the maximum legal
 # value. Also makes sure a core write and hex input still work.
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-here=`pwd`
-tmp=/tmp/$$
-status=1	# failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
+# test exit cleanup goes here
+cleanup() { :; }
 
-_cleanup()
-{
-    cd /
-    rm -f $tmp.*
-}
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# include test specific environments here
+_supported_fs xfs
+_supported_os Linux
+_require_scratch_nocheck
+_require_xfs_mkfs_crc
 
 _do_bit_test()
 {
@@ -39,18 +38,6 @@ _do_bit_test()
 	echo
 }
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-
-# real QA test starts here
-
-# Modify as appropriate.
-_supported_fs xfs
-_supported_os Linux
-_require_scratch_nocheck
-_require_xfs_mkfs_crc
-
 _scratch_mkfs -m crc=0 >/dev/null 2>&1
 _scratch_mount
 
@@ -79,5 +66,4 @@ _scratch_xfs_db -x -c "inode $FILE_INO" -c "write core.gen 0xa5"
 _scratch_xfs_db -x -c "inode $FILE_INO" -c "write core.gen 0"
 _scratch_xfs_db -x -c "inode $FILE_INO" -c "write core.gen #5a5a"
 _scratch_xfs_db -x -c "inode $FILE_INO" -c "write core.gen #a5a5"
-status=0
-exit
+_success
diff --git a/tests/xfs/002 b/tests/xfs/002
index bd1c0a7a07f9..f64408afb3c1 100755
--- a/tests/xfs/002
+++ b/tests/xfs/002
@@ -13,26 +13,15 @@
 # for further explanation.  (NB: while the commit log was good, the
 # patch had a bug which was subsequently fixed)
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
-
-here=`pwd`
-tmp=/tmp/$$
-status=1	# failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
-
-_cleanup()
-{
-    cd /
-    rm -f $tmp.*
-}
-
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-
-# Modify as appropriate.
+. common/setup_test
+
+# test exit cleanup goes here
+cleanup() { :; }
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# include test specific environments here
 _supported_fs xfs
 _supported_os Linux
 _require_scratch_nocheck
@@ -41,8 +30,6 @@ _require_no_large_scratch_dev
 # So we can explicitly turn it _off_:
 _require_xfs_mkfs_crc
 
-rm -f $seqres.full
-
 _scratch_mkfs_xfs -m crc=0 -d size=128m >> $seqres.full 2>&1 || _fail "mkfs failed"
 
 # Scribble past a couple V4 secondary superblocks to populate sb_crc
@@ -56,6 +43,4 @@ _scratch_mount
 # This should pass
 $XFS_GROWFS_PROG $SCRATCH_MNT >> $seqres.full 2>&1 || _fail "growfs failed"
 
-# success, all done
-status=0
-exit
+_success
diff --git a/tests/xfs/003 b/tests/xfs/003
index 1ce3e5ce71a1..ca24e2be40cf 100755
--- a/tests/xfs/003
+++ b/tests/xfs/003
@@ -6,20 +6,15 @@
 #
 # exercise xfs_db bug #784078
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
+# test exit cleanup goes here
+cleanup() { :; }
 
-tmp=/tmp/$$
-here=`pwd`
-status=0	# success is the default!
-trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
+# remove previous $seqres.full before test
+rm -f $seqres.full
 
-# real QA test starts here
+# include test specific environments here
 _supported_fs xfs
 _supported_os Linux
 _require_test
@@ -67,3 +62,5 @@ test_done
 echo "=== TEST 7 ==="
 xfs_db -r -c 'ring' $TEST_DEV
 test_done
+
+_success
diff --git a/tests/xfs/004 b/tests/xfs/004
index bf03583d7382..040133efc195 100755
--- a/tests/xfs/004
+++ b/tests/xfs/004
@@ -6,21 +6,19 @@
 #
 # exercise xfs_db bug #789674 and other freesp functionality
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-here=`pwd`
-tmp=/tmp/$$
-status=0
+# test exit cleanup goes here
+cleanup() { :; }
 
-_cleanup()
-{
-	_scratch_unmount
-	rm -f $tmp.*
-	exit $status
-}
-trap "_cleanup" 0 1 2 3 15
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# include test specific environments here
+_supported_fs xfs
+_supported_os Linux
+_require_scratch
+_require_no_large_scratch_dev
 
 _populate_scratch()
 {
@@ -36,19 +34,6 @@ _populate_scratch()
 	_scratch_mount				# and then remount
 }
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-
-# real QA test starts here
-_supported_fs xfs
-_supported_os Linux
-
-_require_scratch
-_require_no_large_scratch_dev
-
-rm -f $seqres.full
-
 _populate_scratch
 
 eval `$DF_PROG -P --block-size=512 $SCRATCH_MNT 2>&1 \
@@ -84,7 +69,7 @@ then
 	echo "Error: $SCRATCH_DEV: freesp mismatch: $ans"
 	echo "xfs_db output ..."
 	cat $tmp.xfs_db
-	status=1
+	exit
 fi
 
 # check the 'pct' field from freesp command is good
@@ -103,7 +88,7 @@ then
 	echo "Error: $SCRATCH_DEV: pct mismatch: $ans (expected 100)"
 	echo "xfs_db output ..."
 	cat $tmp.xfs_db
-	status=1
+	exit
 fi
 
-exit
+_success
diff --git a/tests/xfs/005 b/tests/xfs/005
index ab7712232933..3f4a608a4e62 100755
--- a/tests/xfs/005
+++ b/tests/xfs/005
@@ -10,34 +10,20 @@
 # inadvertently caused primary SB CRC failures to not error out, this
 # is a regression test for that fix.
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-here=`pwd`
-tmp=/tmp/$$
-status=1	# failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
+# test exit cleanup goes here
+cleanup() { :; }
 
-_cleanup()
-{
-    cd /
-    rm -f $tmp.*
-}
-
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
+# remove previous $seqres.full before test
+rm -f $seqres.full
 
-# Modify as appropriate.
+# include test specific environments here
 _supported_fs xfs
 _supported_os Linux
-
 _require_scratch_nocheck
 _require_xfs_mkfs_crc
 
-rm -f $seqres.full
-
 _scratch_mkfs_xfs -m crc=1 >> $seqres.full 2>&1 || _fail "mkfs failed"
 
 # Zap the crc.  xfs_db updates the CRC post-write, so poke it directly
@@ -46,6 +32,4 @@ $XFS_IO_PROG -c "pwrite 224 4" -c fsync $SCRATCH_DEV | _filter_xfs_io
 # should FAIL, the crc is bad; golden output contains mount failure
 _try_scratch_mount 2>&1 | _filter_error_mount
 
-# success, all done
-status=0
-exit
+_success
diff --git a/tests/xfs/006 b/tests/xfs/006
index 2ee066200e20..57c3898caa37 100755
--- a/tests/xfs/006
+++ b/tests/xfs/006
@@ -7,31 +7,18 @@
 # Test xfs' "fail at unmount" error handling configuration. Stop
 # XFS from retrying to writeback forever at unmount.
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-here=`pwd`
-tmp=/tmp/$$
-status=1	# failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
-
-_cleanup()
-{
-	cd /
-	rm -f $tmp.*
+# test exit cleanup goes here
+cleanup() {
 	_dmerror_cleanup
 }
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-. ./common/dmerror
-
 # remove previous $seqres.full before test
 rm -f $seqres.full
 
-# real QA test starts here
+# include test specific environments here
+. ./common/dmerror
 _supported_fs xfs
 _supported_os Linux
 _require_scratch
@@ -83,6 +70,4 @@ _dmerror_load_working_table
 _dmerror_mount
 _dmerror_unmount
 
-# success, all done
-status=0
-exit
+_success
diff --git a/tests/xfs/007 b/tests/xfs/007
index 7e965a642be5..59808e219efa 100755
--- a/tests/xfs/007
+++ b/tests/xfs/007
@@ -6,35 +6,21 @@
 #
 # Test to verify Q_XQUOTARM functionality.
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-here=`pwd`
-tmp=/tmp/$$
-status=1	# failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
+# test exit cleanup goes here
+cleanup() { :; }
 
-_cleanup()
-{
-    cd /
-    rm -f $tmp.*
-}
+# remove previous $seqres.full before test
+rm -f $seqres.full
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
+# include test specific environments here
 . ./common/quota
-
-# Modify as appropriate.
 _supported_fs xfs
 _supported_os Linux
-
 _require_scratch
 _require_xfs_quota
 
-rm -f $seqres.full
-
 _scratch_mkfs_xfs | _filter_mkfs > /dev/null 2> $tmp.mkfs
 . $tmp.mkfs
 
@@ -83,6 +69,4 @@ _qmount
 _require_prjquota $SCRATCH_DEV
 do_test uquotino $PQUOTINO up
 
-# success, all done
-status=0
-exit
+_success
diff --git a/tests/xfs/008 b/tests/xfs/008
index 968a80528eec..51d5e5c50d96 100755
--- a/tests/xfs/008
+++ b/tests/xfs/008
@@ -6,32 +6,29 @@
 #
 # randholes test
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
+. common/setup_test
 
-here=`pwd`
-tmp=/tmp/$$
-status=0	# success is the default!
-pgsize=`$here/src/feature -s`
-trap "_cleanup; exit \$status" 0 1 2 3 15
-
-_cleanup()
-{
-    rm -f $tmp.*
-    rm -rf $TEST_DIR/randholes.$$.*
+# test exit cleanup goes here
+cleanup() {
+	rm -rf $TEST_DIR/randholes.$$.*
 }
 
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# include test specific environments here
+_supported_fs xfs
+_supported_os Linux
+_require_test
+
+pgsize=`$here/src/feature -s`
+
 _filter()
 {
     sed -e "s/-b $pgsize/-b PGSIZE/g" \
 	-e "s/-l .* -c/-l FSIZE -c/g"
 }
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-
 _do_test()
 {
     _n="$1"
@@ -64,17 +61,9 @@ _do_test()
         echo "$_n - output from bmap:"                      >>$seqres.full
         echo "--------------------------------------"       >>$seqres.full
         xfs_bmap -vvv $out                                  >>$seqres.full
-        status=1
     fi
 }
 
-# real QA test starts here
-_supported_fs xfs
-_supported_os Linux
-_require_test
-
-rm -f $seqres.full
-
 # Note on special numbers here.
 #
 # We are trying to create roughly 50 or 100 holes in a file
@@ -95,5 +84,4 @@ _do_test 5 100 "-d -l `expr 400 \* $pgsize` -c 100 -b $pgsize"
 
 # todo: realtime.
 
-# success, all done
-exit
+_success
diff --git a/tests/xfs/009 b/tests/xfs/009
index 68f63798cee3..6225d602d5f7 100755
--- a/tests/xfs/009
+++ b/tests/xfs/009
@@ -6,24 +6,25 @@
 #
 # XFS allocator test (preallocation - allocp, resvsp ,etc)
 #
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
-
-here=`pwd`
-tmp=/tmp/$$
-status=1	# failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
+. common/setup_test
+
+# test exit cleanup goes here
+cleanup() { :; }
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# include test specific environments here
+_supported_fs xfs
+_supported_os Linux
+_require_scratch
+
+_supported_fs generic
+_supported_os Linux
+
 # This isn't really related to fs block size, it's just what
 # alloc uses for the "block" unit in it's input parameters...
 bsize=4096
-
-_cleanup()
-{
-    echo "*** unmount"
-    _scratch_unmount
-}
-
 _block_filter()
 {
    sed \
@@ -54,16 +55,6 @@ _filesize()
     ls -l $1 | $AWK_PROG '{print "filesize = " $5}'
 }
 
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-
-# real QA test starts here
-_supported_fs xfs
-_supported_os Linux
-
-_require_scratch
-
 _init
 out=$SCRATCH_MNT/$$.tmp
 
@@ -167,5 +158,6 @@ EOF
 
 _filesize $out
 
-status=0
-exit
+echo "*** unmount"
+_scratch_unmount
+_success
-- 
2.17.0


  parent reply	other threads:[~2018-06-27  8:21 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-27  8:20 [PATCH 0/6] fstests: start factoring test setup boilerplate Dave Chinner
2018-06-27  8:20 ` [PATCH 1/8] fstests: generic test setup preamble Dave Chinner
2018-06-27 11:07   ` Amir Goldstein
2018-06-27  8:20 ` [PATCH 2/8] tests: convert various test dirs to " Dave Chinner
2018-06-27 10:34   ` Amir Goldstein
2018-06-27 14:03     ` Dave Chinner
2018-06-27  8:20 ` [PATCH 3/8] shared: use new test " Dave Chinner
2018-06-27 10:56   ` Amir Goldstein
2018-06-27 14:27     ` Dave Chinner
2018-06-27 14:43       ` Amir Goldstein
2018-06-27 22:07         ` Dave Chinner
2018-06-28  4:12           ` Amir Goldstein
2018-06-27  8:20 ` [PATCH 4/8] generic: convert some tests to new " Dave Chinner
2018-06-27 11:08   ` Amir Goldstein
2018-07-07 11:28   ` Eryu Guan
2018-06-27  8:21 ` [PATCH 5/8] btrfs: " Dave Chinner
2018-06-27 11:30   ` Amir Goldstein
2018-06-27 14:34     ` Dave Chinner
2018-06-27 14:48       ` Amir Goldstein
2018-07-07 11:22   ` Eryu Guan
2018-06-27  8:21 ` [PATCH 6/8] ext4: " Dave Chinner
2018-06-27 11:34   ` Amir Goldstein
2018-07-07 11:25   ` Eryu Guan
2018-06-27  8:21 ` [PATCH 7/8] overlay: " Dave Chinner
2018-06-27 11:37   ` Amir Goldstein
2018-06-27  8:21 ` Dave Chinner [this message]
2018-06-27 11:42   ` [PATCH 8/8] xfs: " Amir Goldstein
2018-06-28  5:59 ` [PATCH 0/6] fstests: start factoring test setup boilerplate Eryu Guan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180627082103.9662-9-david@fromorbit.com \
    --to=david@fromorbit.com \
    --cc=fstests@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox