btrfs-progs: fsck-tests: Update 013-extent-tree-rebuild to use more test framework...
authorQu Wenruo <quwenruo@cn.fujitsu.com>
Fri, 3 Apr 2015 07:01:14 +0000 (15:01 +0800)
committerDavid Sterba <dsterba@suse.cz>
Tue, 7 Apr 2015 15:22:30 +0000 (17:22 +0200)
Update 013-extent-tree-rebuild to use more framework infrastructure,
including:
1) Use run_check other than open-coded redirect
2) Add root privillege
3) Add dependency on 'btrfs-debug-tree' command

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
tests/fsck-tests/013-extent-tree-rebuild/test.sh

index cde97db..7453ed7 100755 (executable)
@@ -2,6 +2,9 @@
 
 source $TOP/tests/common
 
+check_prereq btrfs-debug-tree
+setup_root_helper
+
 if [ -z $TEST_DEV ]; then
        echo "    [NOTRUN] extent tree rebuild, need TEST_DEV variant"
        exit 0
@@ -16,32 +19,32 @@ fi
 test_extent_tree_rebuild()
 {
        echo "     [TEST]    extent tree rebuild"
-       $TOP/mkfs.btrfs -f $TEST_DEV >> /dev/null 2>&1 || _fail "fail to mkfs"
+       run_check $SUDO_HELPER $TOP/mkfs.btrfs -f $TEST_DEV
 
-       run_check mount $TEST_DEV $TEST_MNT
-       cp -aR /lib/modules/`uname -r`/ $TEST_MNT 2>&1
+       run_check $SUDO_HELPER mount $TEST_DEV $TEST_MNT
+       run_check $SUDO_HELPER cp -aR /lib/modules/`uname -r`/ $TEST_MNT
 
        for i in `seq 1 100`;do
-               $TOP/btrfs sub snapshot $TEST_MNT \
-                       $TEST_MNT/snapaaaaaaa_$i >& /dev/null
+               run_check $SUDO_HELPER $TOP/btrfs sub snapshot $TEST_MNT \
+                       $TEST_MNT/snapaaaaaaa_$i
        done
-       run_check umount $TEST_DEV
+       run_check $SUDO_HELPER umount $TEST_DEV
 
        # get extent root bytenr
-       extent_root_bytenr=`$TOP/btrfs-debug-tree -r $TEST_DEV | \
+       extent_root_bytenr=`$SUDO_HELPER $TOP/btrfs-debug-tree -r $TEST_DEV | \
                            grep extent | awk '{print $7}'`
        if [ -z $extent_root_bytenr ];then
                _fail "fail to get extent root bytenr"
        fi
 
        # corrupt extent root node block
-       run_check $TOP/btrfs-corrupt-block -l $extent_root_bytenr \
+       run_check $SUDO_HELPER $TOP/btrfs-corrupt-block -l $extent_root_bytenr \
                -b 4096 $TEST_DEV
 
-       $TOP/btrfs check $TEST_DEV >& /dev/null && \
+       $SUDO_HELPER $TOP/btrfs check $TEST_DEV >& /dev/null && \
                        _fail "btrfs check should detect failure"
-       run_check $TOP/btrfs check --init-extent-tree $TEST_DEV
-       run_check $TOP/btrfs check $TEST_DEV
+       run_check $SUDO_HELPER $TOP/btrfs check --init-extent-tree $TEST_DEV
+       run_check $SUDO_HELPER $TOP/btrfs check $TEST_DEV
 }
 
 test_extent_tree_rebuild