summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.com>2017-10-27 18:03:42 +0200
committerDavid Sterba <dsterba@suse.com>2017-11-14 15:59:00 +0100
commitf49e2bc3dcef87b58472801d6f4de694c3158c36 (patch)
treecbc637656ca120f452aa216e01ab56c72f216fb5 /tests
parent5a78f577a3d46b5fc75d88db600a97e32a3f4a26 (diff)
btrfs-progs: tests: extend fsck/028 to test fix-device-size and mount
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'tests')
-rwxr-xr-xtests/fsck-tests/028-unaligned-super-dev-sizes/test.sh26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/fsck-tests/028-unaligned-super-dev-sizes/test.sh b/tests/fsck-tests/028-unaligned-super-dev-sizes/test.sh
new file mode 100755
index 00000000..6f315fae
--- /dev/null
+++ b/tests/fsck-tests/028-unaligned-super-dev-sizes/test.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+#
+# An image with mis-aligned superblock total_bytes, that will be found and
+# fixed by 'check' or fixed by 'rescue fix-device-size'
+
+source "$TOP/tests/common"
+
+check_prereq btrfs
+prepare_test_dev
+setup_root_helper
+
+check_all_images
+
+image=$(extract_image "./dev_and_super_mismatch_unaligned.raw.xz")
+
+# detect and fix
+run_check "$TOP/btrfs" rescue fix-device-size "$image"
+# no problem found
+run_check "$TOP/btrfs" rescue fix-device-size "$image"
+# check if fix-device-size worked
+run_check "$TOP/btrfs" check "$image"
+# mount test
+run_check_mount_test_dev
+run_check_umount_test_dev
+
+rm -f "$image"