btrfs-progs: tests: fsck/007 fix so check --force works
authorDavid Sterba <dsterba@suse.com>
Tue, 10 Oct 2017 12:57:26 +0000 (14:57 +0200)
committerDavid Sterba <dsterba@suse.com>
Fri, 13 Oct 2017 18:15:47 +0000 (20:15 +0200)
Signed-off-by: David Sterba <dsterba@suse.com>
tests/cli-tests/007-check-force/test.sh

index 8b60033..12b3020 100755 (executable)
@@ -8,9 +8,15 @@ check_prereq mkfs.btrfs
 check_prereq btrfs
 
 setup_root_helper
-prepare_test_dev
 
-run_check "$TOP/mkfs.btrfs" -f "$TEST_DEV"
+# we need to use a real block device, because the check opens the device in
+# exclusive mode, that unfortunatelly behaves differently for direct file
+# access and for the real /dev/loop0 device
+setup_loopdevs 1
+prepare_loopdevs
+TEST_DEV=${loopdevs[1]}
+
+run_check $SUDO_HELPER "$TOP/mkfs.btrfs" -f "$TEST_DEV"
 run_check_mount_test_dev
 run_mustfail "checking mounted filesystem without --force" \
        $SUDO_HELPER "$TOP/btrfs" check "$TEST_DEV"
@@ -22,3 +28,5 @@ run_check $SUDO_HELPER "$TOP/btrfs" check "$TEST_DEV"
 run_check $SUDO_HELPER "$TOP/btrfs" check --force "$TEST_DEV"
 run_mustfail "--force --repair on unmounted filesystem" \
        $SUDO_HELPER "$TOP/btrfs" check --force --repair "$TEST_DEV"
+
+cleanup_loopdevs