diff options
author | David Sterba <dsterba@suse.com> | 2017-09-01 20:14:03 +0200 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2017-09-08 16:15:05 +0200 |
commit | 528a5bf6ad1f90366c6422a2d1488f88a5df4abb (patch) | |
tree | 1afaf237205c4a55c2cab5552eeea67868be728d /tests | |
parent | 3a6895b823cfe950eda2b1866227a68edb050fab (diff) |
btrfs-progs: tests: move loopdev helpers out of the testcase to common
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/common | 41 | ||||
-rwxr-xr-x | tests/mkfs-tests/001-basic-profiles/test.sh | 33 |
2 files changed, 41 insertions, 33 deletions
diff --git a/tests/common b/tests/common index d0324a62..ebd41ba9 100644 --- a/tests/common +++ b/tests/common @@ -519,6 +519,47 @@ generate_dataset() { esac } +# prepare environment for loop devices, set up the following variables +# - nloopdevs -- number of desired devices +# - loopdevs -- array containing paths to all devices (after prepare is called) +# - loopdev_prefix -- file backed images starting with this string, 'img' by default +# +# $1: number of loop devices to be set up +setup_loopdevs() +{ + if [ -z "$1" ]; then + _fail "setup_loopdevs needs a number" + fi + nloopdevs="$1" + loopdev_prefix=img + declare -a loopdevs + +} + +# create all loop devices from a given loopdev environment +prepare_loopdevs() +{ + for i in `seq $nloopdevs`; do + touch $loopdev_prefix$i + chmod a+rw $loopdev_prefix$i + truncate -s0 $loopdev_prefix$i + truncate -s2g $loopdev_prefix$i + loopdevs[$i]=`run_check_stdout $SUDO_HELPER losetup --find --show $loopdev_prefix$i` + done +} + +# detach loop devices and reset their size to 0, does not delete the files +cleanup_loopdevs() +{ + for dev in ${loopdevs[@]}; do + run_check $SUDO_HELPER losetup -d $dev + done + for i in `seq $nloopdevs`; do + truncate -s0 $loopdev_prefix$i + done + run_check $SUDO_HELPER losetup --all +} + init_env() { TEST_MNT="${TEST_MNT:-$TOP/tests/mnt}" diff --git a/tests/mkfs-tests/001-basic-profiles/test.sh b/tests/mkfs-tests/001-basic-profiles/test.sh index 216ad5fb..854ee007 100755 --- a/tests/mkfs-tests/001-basic-profiles/test.sh +++ b/tests/mkfs-tests/001-basic-profiles/test.sh @@ -9,39 +9,6 @@ check_prereq btrfs setup_root_helper -setup_loopdevs() -{ - if [ -z "$1" ]; then - _fail "setup_loopdevs needs a number" - fi - nloopdevs="$1" - loopdev_prefix=img - declare -a loopdevs - -} - -prepare_loopdevs() -{ - for i in `seq $nloopdevs`; do - touch $loopdev_prefix$i - chmod a+rw $loopdev_prefix$i - truncate -s0 $loopdev_prefix$i - truncate -s2g $loopdev_prefix$i - loopdevs[$i]=`run_check_stdout $SUDO_HELPER losetup --find --show $loopdev_prefix$i` - done -} - -cleanup_loopdevs() -{ - for dev in ${loopdevs[@]}; do - run_check $SUDO_HELPER losetup -d $dev - done - for i in `seq $nloopdevs`; do - truncate -s0 $loopdev_prefix$i - done - run_check $SUDO_HELPER losetup --all -} - test_get_info() { run_check $SUDO_HELPER $TOP/btrfs inspect-internal dump-super $dev1 |