xfstests: cleanup duplicates in all tests
[xfstests-dev.git] / tests / generic / 124
1 #! /bin/bash
2 # FSQA Test No. 124
3 #
4 # Test preallocated_rw_pattern_test modified from CXFSQA test preallocated_rw_pattern_test
5 #
6 # pat stands for pattern.  First 8 bytes contains the 64-bit number 0,
7 # second is 1, ..., until last 8 bytes (1048568-1048575) contain 131071.
8 # patw preallocates the file and then writes the pattern, patr checks it
9 #
10 #-----------------------------------------------------------------------
11 # Copyright (c) 2006 Silicon Graphics, Inc.  All Rights Reserved.
12 #
13 # This program is free software; you can redistribute it and/or
14 # modify it under the terms of the GNU General Public License as
15 # published by the Free Software Foundation.
16 #
17 # This program is distributed in the hope that it would be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 # GNU General Public License for more details.
21 #
22 # You should have received a copy of the GNU General Public License
23 # along with this program; if not, write the Free Software Foundation,
24 # Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
25 #
26 #-----------------------------------------------------------------------
27 #
28
29 seq=`basename $0`
30 seqres=$RESULT_DIR/$seq
31 echo "QA output created by $seq"
32
33 here=`pwd`
34 tmp=/tmp/$$
35 status=1        # failure is the default!
36 trap "_cleanup; exit \$status" 0 1 2 3 15
37
38 _cleanup()
39 {
40     cd /
41     _cleanup_testdir
42 }
43
44 # get standard environment, filters and checks
45 . ./common/rc
46 . ./common/filter
47
48 # real QA test starts here
49 _supported_fs generic
50 _supported_os Linux
51
52 _setup_testdir
53 _require_scratch
54 _scratch_mkfs >/dev/null 2>&1
55 _scratch_mount
56
57 # Run preallo_rw_pattern on both test and scratch partitions
58 for TESTFILE in $testdir/rw_pattern.tmp $SCRATCH_MNT/rw_pattern.tmp
59   do
60   count=1
61   while (( count < 101 ))
62     do
63     src/preallo_rw_pattern_writer $TESTFILE
64     src/preallo_rw_pattern_reader $TESTFILE
65     if (test $? -ne 0) then
66         echo Read/Write Pattern Test FAILED.
67         _cleanup
68         exit 1
69     fi
70     rm $TESTFILE
71     ((count=count+1))
72   done #done for count of  100
73 done
74
75 if (test $? -eq 0 ) then
76     status=0
77 fi
78
79 umount $SCRATCH_DEV
80
81 _check_test_fs
82 _check_scratch_fs
83
84 exit