mirror of
https://github.com/kdave/btrfs-progs
synced 2025-04-08 18:21:45 +00:00
btrfs-progs: tests: enhance API to request type of the converted filesystem
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>
This commit is contained in:
parent
55110d520b
commit
46809a7287
@ -22,8 +22,13 @@ convert_test_preamble() {
|
|||||||
|
|
||||||
# prepare TEST_DEV before conversion, create filesystem and mount it, image
|
# prepare TEST_DEV before conversion, create filesystem and mount it, image
|
||||||
# size is 512MB
|
# 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() {
|
convert_test_prep_fs() {
|
||||||
|
local fstype
|
||||||
|
|
||||||
|
fstype="$1"
|
||||||
|
shift
|
||||||
# TEST_DEV not removed as the file might have special permissions, eg.
|
# 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
|
# when test image is on NFS and would not be writable for root
|
||||||
run_check truncate -s 0 "$TEST_DEV"
|
run_check truncate -s 0 "$TEST_DEV"
|
||||||
@ -173,11 +178,13 @@ convert_test_post_rollback() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# simple wrapper for a convert test
|
# simple wrapper for a convert test
|
||||||
# $1: btrfs features, argument to -O
|
# $1: type of the converted filesystem
|
||||||
# $2: description of the test "ext2 8k nodesize"
|
# $2: btrfs features, argument to -O
|
||||||
# $3: nodesize value
|
# $3: description of the test "ext2 8k nodesize"
|
||||||
# $4 + rest: command to create the ext2 image
|
# $4: nodesize value
|
||||||
|
# $5 + rest: command to create the ext2 image
|
||||||
convert_test() {
|
convert_test() {
|
||||||
|
local fstype
|
||||||
local features
|
local features
|
||||||
local nodesize
|
local nodesize
|
||||||
local msg
|
local msg
|
||||||
@ -185,12 +192,13 @@ convert_test() {
|
|||||||
local EXT_PERMTMP
|
local EXT_PERMTMP
|
||||||
local EXT_ACLTMP
|
local EXT_ACLTMP
|
||||||
|
|
||||||
features="$1"
|
fstype="$1"
|
||||||
msg="$2"
|
features="$2"
|
||||||
nodesize="$3"
|
msg="$3"
|
||||||
shift 3
|
nodesize="$4"
|
||||||
|
shift 4
|
||||||
convert_test_preamble "$features" "$msg" "$nodesize" "$@"
|
convert_test_preamble "$features" "$msg" "$nodesize" "$@"
|
||||||
convert_test_prep_fs "$@"
|
convert_test_prep_fs "$fstype" "$@"
|
||||||
populate_fs
|
populate_fs
|
||||||
CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
|
CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
|
||||||
EXT_PERMTMP=$(mktemp --tmpdir btrfs-progs-convert.permXXXXXX)
|
EXT_PERMTMP=$(mktemp --tmpdir btrfs-progs-convert.permXXXXXX)
|
||||||
|
@ -8,9 +8,9 @@ prepare_test_dev 512M
|
|||||||
check_prereq btrfs-convert
|
check_prereq btrfs-convert
|
||||||
|
|
||||||
for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
||||||
convert_test "$feature" "ext2 4k nodesize" 4096 mke2fs -b 4096
|
convert_test ext2 "$feature" "ext2 4k nodesize" 4096 mke2fs -b 4096
|
||||||
convert_test "$feature" "ext2 8k nodesize" 8192 mke2fs -b 4096
|
convert_test ext2 "$feature" "ext2 8k nodesize" 8192 mke2fs -b 4096
|
||||||
convert_test "$feature" "ext2 16k nodesize" 16384 mke2fs -b 4096
|
convert_test ext2 "$feature" "ext2 16k nodesize" 16384 mke2fs -b 4096
|
||||||
convert_test "$feature" "ext2 32k nodesize" 32768 mke2fs -b 4096
|
convert_test ext2 "$feature" "ext2 32k nodesize" 32768 mke2fs -b 4096
|
||||||
convert_test "$feature" "ext2 64k nodesize" 65536 mke2fs -b 4096
|
convert_test ext2 "$feature" "ext2 64k nodesize" 65536 mke2fs -b 4096
|
||||||
done
|
done
|
||||||
|
@ -8,9 +8,9 @@ prepare_test_dev 512M
|
|||||||
check_prereq btrfs-convert
|
check_prereq btrfs-convert
|
||||||
|
|
||||||
for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
||||||
convert_test "$feature" "ext3 4k nodesize" 4096 mke2fs -j -b 4096
|
convert_test ext3 "$feature" "ext3 4k nodesize" 4096 mke2fs -j -b 4096
|
||||||
convert_test "$feature" "ext3 8k nodesize" 8192 mke2fs -j -b 4096
|
convert_test ext3 "$feature" "ext3 8k nodesize" 8192 mke2fs -j -b 4096
|
||||||
convert_test "$feature" "ext3 16k nodesize" 16384 mke2fs -j -b 4096
|
convert_test ext3 "$feature" "ext3 16k nodesize" 16384 mke2fs -j -b 4096
|
||||||
convert_test "$feature" "ext3 32k nodesize" 32768 mke2fs -j -b 4096
|
convert_test ext3 "$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 64k nodesize" 65536 mke2fs -j -b 4096
|
||||||
done
|
done
|
||||||
|
@ -8,9 +8,9 @@ prepare_test_dev 512M
|
|||||||
check_prereq btrfs-convert
|
check_prereq btrfs-convert
|
||||||
|
|
||||||
for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
||||||
convert_test "$feature" "ext4 4k nodesize" 4096 mke2fs -t ext4 -b 4096
|
convert_test ext4 "$feature" "ext4 4k nodesize" 4096 mke2fs -t ext4 -b 4096
|
||||||
convert_test "$feature" "ext4 8k nodesize" 8192 mke2fs -t ext4 -b 4096
|
convert_test ext4 "$feature" "ext4 8k nodesize" 8192 mke2fs -t ext4 -b 4096
|
||||||
convert_test "$feature" "ext4 16k nodesize" 16384 mke2fs -t ext4 -b 4096
|
convert_test ext4 "$feature" "ext4 16k nodesize" 16384 mke2fs -t ext4 -b 4096
|
||||||
convert_test "$feature" "ext4 32k nodesize" 32768 mke2fs -t ext4 -b 4096
|
convert_test ext4 "$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 64k nodesize" 65536 mke2fs -t ext4 -b 4096
|
||||||
done
|
done
|
||||||
|
@ -26,7 +26,7 @@ do_test() {
|
|||||||
nodesize="$3"
|
nodesize="$3"
|
||||||
shift 3
|
shift 3
|
||||||
convert_test_preamble "$features" "$msg" "$nodesize" "$@"
|
convert_test_preamble "$features" "$msg" "$nodesize" "$@"
|
||||||
convert_test_prep_fs "$@"
|
convert_test_prep_fs ext4 "$@"
|
||||||
populate_fs
|
populate_fs
|
||||||
CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
|
CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
|
||||||
convert_test_gen_checksums "$CHECKSUMTMP"
|
convert_test_gen_checksums "$CHECKSUMTMP"
|
||||||
|
@ -14,7 +14,7 @@ check_prereq btrfs-convert
|
|||||||
|
|
||||||
default_mke2fs="mke2fs -t ext4 -b 4096"
|
default_mke2fs="mke2fs -t ext4 -b 4096"
|
||||||
convert_test_preamble '' 'large hole extent test' 16k "$default_mke2fs"
|
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 \
|
run_check $SUDO_HELPER dd if=/dev/zero of="$TEST_MNT/file" bs=1M \
|
||||||
count=1 seek=1024 > /dev/null 2>&1
|
count=1 seek=1024 > /dev/null 2>&1
|
||||||
|
@ -11,7 +11,7 @@ check_prereq btrfs-convert
|
|||||||
for bs in 1024 2048; do
|
for bs in 1024 2048; do
|
||||||
default_mke2fs="mke2fs -t ext4 -b $bs"
|
default_mke2fs="mke2fs -t ext4 -b $bs"
|
||||||
convert_test_preamble '' "unsupported block size $bs" 16k "$default_mke2fs"
|
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 \
|
run_check $SUDO_HELPER dd if=/dev/zero of="$TEST_MNT/file" bs=1M \
|
||||||
count=1 seek=1024 > /dev/null 2>&1
|
count=1 seek=1024 > /dev/null 2>&1
|
||||||
|
@ -10,7 +10,7 @@ check_prereq btrfs-convert
|
|||||||
|
|
||||||
default_mke2fs="mke2fs -t ext4 -b 4096"
|
default_mke2fs="mke2fs -t ext4 -b 4096"
|
||||||
convert_test_preamble '' 'readonly image test' 16k "$default_mke2fs"
|
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
|
run_check_umount_test_dev
|
||||||
convert_test_do_convert
|
convert_test_do_convert
|
||||||
run_check_mount_test_dev
|
run_check_mount_test_dev
|
||||||
|
@ -11,7 +11,7 @@ check_prereq btrfs-convert
|
|||||||
fail=0
|
fail=0
|
||||||
default_mke2fs="mke2fs -t ext4 -b 4096"
|
default_mke2fs="mke2fs -t ext4 -b 4096"
|
||||||
convert_test_preamble '' 'common inode flags test' 16k "$default_mke2fs"
|
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
|
# create file with specific flags
|
||||||
run_check $SUDO_HELPER touch "$TEST_MNT/flag_test"
|
run_check $SUDO_HELPER touch "$TEST_MNT/flag_test"
|
||||||
|
Loading…
Reference in New Issue
Block a user