btrfs-progs: tests: enhance API to request type of the converted filesystem
authorDavid Sterba <dsterba@suse.com>
Thu, 20 Jul 2017 15:53:56 +0000 (17:53 +0200)
committerDavid Sterba <dsterba@suse.com>
Thu, 20 Jul 2017 17:42:42 +0000 (19:42 +0200)
We'll use mount -t $fstype later on, extend the API so we don't have to
parse the type from other parameters.

Signed-off-by: David Sterba <dsterba@suse.com>
tests/common.convert
tests/convert-tests/001-ext2-basic/test.sh
tests/convert-tests/002-ext3-basic/test.sh
tests/convert-tests/003-ext4-basic/test.sh
tests/convert-tests/005-delete-all-rollback/test.sh
tests/convert-tests/006-large-hole-extent/test.sh
tests/convert-tests/007-unsupported-block-sizes/test.sh
tests/convert-tests/008-readonly-image/test.sh
tests/convert-tests/009-common-inode-flags/test.sh

index 8c9242e..12ad3a8 100644 (file)
@@ -22,8 +22,13 @@ convert_test_preamble() {
 
 #  prepare TEST_DEV before conversion, create filesystem and mount it, image
 #  size is 512MB
-#  $@: free form, command to create the filesystem, with appended -F
+#  $1: type of the filesystem
+#  $2+: free form, command to create the filesystem, with appended -F
 convert_test_prep_fs() {
+       local fstype
+
+       fstype="$1"
+       shift
        # TEST_DEV not removed as the file might have special permissions, eg.
        # when test image is on NFS and would not be writable for root
        run_check truncate -s 0 "$TEST_DEV"
@@ -173,11 +178,13 @@ convert_test_post_rollback() {
 }
 
 # simple wrapper for a convert test
-# $1: btrfs features, argument to -O
-# $2: description of the test "ext2 8k nodesize"
-# $3: nodesize value
-# $4 + rest: command to create the ext2 image
+# $1: type of the converted filesystem
+# $2: btrfs features, argument to -O
+# $3: description of the test "ext2 8k nodesize"
+# $4: nodesize value
+# $5 + rest: command to create the ext2 image
 convert_test() {
+       local fstype
        local features
        local nodesize
        local msg
@@ -185,12 +192,13 @@ convert_test() {
        local EXT_PERMTMP
        local EXT_ACLTMP
 
-       features="$1"
-       msg="$2"
-       nodesize="$3"
-       shift 3
+       fstype="$1"
+       features="$2"
+       msg="$3"
+       nodesize="$4"
+       shift 4
        convert_test_preamble "$features" "$msg" "$nodesize" "$@"
-       convert_test_prep_fs "$@"
+       convert_test_prep_fs "$fstype" "$@"
        populate_fs
        CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
        EXT_PERMTMP=$(mktemp --tmpdir btrfs-progs-convert.permXXXXXX)
index 07f1d6e..7d8e87d 100755 (executable)
@@ -8,9 +8,9 @@ prepare_test_dev 512M
 check_prereq btrfs-convert
 
 for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
-       convert_test "$feature" "ext2 4k nodesize" 4096 mke2fs -b 4096
-       convert_test "$feature" "ext2 8k nodesize" 8192 mke2fs -b 4096
-       convert_test "$feature" "ext2 16k nodesize" 16384 mke2fs -b 4096
-       convert_test "$feature" "ext2 32k nodesize" 32768 mke2fs -b 4096
-       convert_test "$feature" "ext2 64k nodesize" 65536 mke2fs -b 4096
+       convert_test ext2 "$feature" "ext2 4k nodesize" 4096 mke2fs -b 4096
+       convert_test ext2 "$feature" "ext2 8k nodesize" 8192 mke2fs -b 4096
+       convert_test ext2 "$feature" "ext2 16k nodesize" 16384 mke2fs -b 4096
+       convert_test ext2 "$feature" "ext2 32k nodesize" 32768 mke2fs -b 4096
+       convert_test ext2 "$feature" "ext2 64k nodesize" 65536 mke2fs -b 4096
 done
index be8a929..5a33c2c 100755 (executable)
@@ -8,9 +8,9 @@ prepare_test_dev 512M
 check_prereq btrfs-convert
 
 for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
-       convert_test "$feature" "ext3 4k nodesize" 4096 mke2fs -j -b 4096
-       convert_test "$feature" "ext3 8k nodesize" 8192 mke2fs -j -b 4096
-       convert_test "$feature" "ext3 16k nodesize" 16384 mke2fs -j -b 4096
-       convert_test "$feature" "ext3 32k nodesize" 32768 mke2fs -j -b 4096
-       convert_test "$feature" "ext3 64k nodesize" 65536 mke2fs -j -b 4096
+       convert_test ext3 "$feature" "ext3 4k nodesize" 4096 mke2fs -j -b 4096
+       convert_test ext3 "$feature" "ext3 8k nodesize" 8192 mke2fs -j -b 4096
+       convert_test ext3 "$feature" "ext3 16k nodesize" 16384 mke2fs -j -b 4096
+       convert_test ext3 "$feature" "ext3 32k nodesize" 32768 mke2fs -j -b 4096
+       convert_test ext3 "$feature" "ext3 64k nodesize" 65536 mke2fs -j -b 4096
 done
index 44ee592..df8bec2 100755 (executable)
@@ -8,9 +8,9 @@ prepare_test_dev 512M
 check_prereq btrfs-convert
 
 for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
-       convert_test "$feature" "ext4 4k nodesize" 4096 mke2fs -t ext4 -b 4096
-       convert_test "$feature" "ext4 8k nodesize" 8192 mke2fs -t ext4 -b 4096
-       convert_test "$feature" "ext4 16k nodesize" 16384 mke2fs -t ext4 -b 4096
-       convert_test "$feature" "ext4 32k nodesize" 32768 mke2fs -t ext4 -b 4096
-       convert_test "$feature" "ext4 64k nodesize" 65536 mke2fs -t ext4 -b 4096
+       convert_test ext4 "$feature" "ext4 4k nodesize" 4096 mke2fs -t ext4 -b 4096
+       convert_test ext4 "$feature" "ext4 8k nodesize" 8192 mke2fs -t ext4 -b 4096
+       convert_test ext4 "$feature" "ext4 16k nodesize" 16384 mke2fs -t ext4 -b 4096
+       convert_test ext4 "$feature" "ext4 32k nodesize" 32768 mke2fs -t ext4 -b 4096
+       convert_test ext4 "$feature" "ext4 64k nodesize" 65536 mke2fs -t ext4 -b 4096
 done
index c6f7466..6871939 100755 (executable)
@@ -26,7 +26,7 @@ do_test() {
        nodesize="$3"
        shift 3
        convert_test_preamble "$features" "$msg" "$nodesize" "$@"
-       convert_test_prep_fs "$@"
+       convert_test_prep_fs ext4 "$@"
        populate_fs
        CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
        convert_test_gen_checksums "$CHECKSUMTMP"
index e99741c..f63a118 100755 (executable)
@@ -14,7 +14,7 @@ check_prereq btrfs-convert
 
 default_mke2fs="mke2fs -t ext4 -b 4096"
 convert_test_preamble '' 'large hole extent test' 16k "$default_mke2fs"
-convert_test_prep_fs $default_mke2fs
+convert_test_prep_fs ext4 $default_mke2fs
 
 run_check $SUDO_HELPER dd if=/dev/zero of="$TEST_MNT/file" bs=1M \
        count=1 seek=1024 > /dev/null 2>&1
index a748840..af8ec35 100755 (executable)
@@ -11,7 +11,7 @@ check_prereq btrfs-convert
 for bs in 1024 2048; do
        default_mke2fs="mke2fs -t ext4 -b $bs"
        convert_test_preamble '' "unsupported block size $bs" 16k "$default_mke2fs"
-       convert_test_prep_fs $default_mke2fs
+       convert_test_prep_fs ext4 $default_mke2fs
 
        run_check $SUDO_HELPER dd if=/dev/zero of="$TEST_MNT/file" bs=1M \
                count=1 seek=1024 > /dev/null 2>&1
index 27c9373..4d5e629 100755 (executable)
@@ -10,7 +10,7 @@ check_prereq btrfs-convert
 
 default_mke2fs="mke2fs -t ext4 -b 4096"
 convert_test_preamble '' 'readonly image test' 16k "$default_mke2fs"
-convert_test_prep_fs $default_mke2fs
+convert_test_prep_fs ext4 $default_mke2fs
 run_check_umount_test_dev
 convert_test_do_convert
 run_check_mount_test_dev
index 02823e1..f42fb68 100755 (executable)
@@ -11,7 +11,7 @@ check_prereq btrfs-convert
 fail=0
 default_mke2fs="mke2fs -t ext4 -b 4096"
 convert_test_preamble '' 'common inode flags test' 16k "$default_mke2fs"
-convert_test_prep_fs $default_mke2fs
+convert_test_prep_fs ext4 $default_mke2fs
 
 # create file with specific flags
 run_check $SUDO_HELPER touch "$TEST_MNT/flag_test"