summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.com>2017-09-01 20:14:03 +0200
committerDavid Sterba <dsterba@suse.com>2017-09-08 16:15:05 +0200
commit528a5bf6ad1f90366c6422a2d1488f88a5df4abb (patch)
tree1afaf237205c4a55c2cab5552eeea67868be728d /tests
parent3a6895b823cfe950eda2b1866227a68edb050fab (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/common41
-rwxr-xr-xtests/mkfs-tests/001-basic-profiles/test.sh33
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