b84016f78f0a82f21858b02cc8e84f52dc0b2576
[platform/upstream/btrfs-progs.git] / tests / mkfs-tests / 001-basic-profiles / test.sh
1 #!/bin/bash
2 # test various blockgroup profile combinations, use loop devices as block
3 # devices
4
5 source "$TEST_TOP/common"
6
7 check_prereq mkfs.btrfs
8 check_prereq btrfs
9
10 setup_root_helper
11
12 test_get_info()
13 {
14         run_check $SUDO_HELPER $TOP/btrfs inspect-internal dump-super $dev1
15         run_check $SUDO_HELPER $TOP/btrfs check $dev1
16         run_check $SUDO_HELPER mount $dev1 $TEST_MNT
17         run_check $TOP/btrfs filesystem df $TEST_MNT
18         run_check $SUDO_HELPER $TOP/btrfs filesystem usage $TEST_MNT
19         run_check $SUDO_HELPER $TOP/btrfs device usage $TEST_MNT
20         run_check $SUDO_HELPER umount "$TEST_MNT"
21 }
22 test_do_mkfs()
23 {
24         run_check $SUDO_HELPER $TOP/mkfs.btrfs -f       \
25                 $@
26 }
27
28 test_mkfs_single()
29 {
30         test_do_mkfs $@ $dev1
31         test_get_info
32 }
33 test_mkfs_multi()
34 {
35         test_do_mkfs $@ ${loopdevs[@]}
36         test_get_info
37 }
38
39 setup_loopdevs 4
40 prepare_loopdevs
41 dev1=${loopdevs[1]}
42
43 test_mkfs_single
44 test_mkfs_single  -d  single  -m  single
45 test_mkfs_single  -d  single  -m  single  --mixed
46 test_mkfs_single  -d  single  -m  dup
47 test_mkfs_single  -d  dup     -m  single
48 test_mkfs_single  -d  dup     -m  dup
49 test_mkfs_single  -d  dup     -m  dup     --mixed
50
51 test_mkfs_multi
52 test_mkfs_multi   -d  single  -m  single
53 test_mkfs_multi   -d  single  -m  single  --mixed
54 test_mkfs_multi   -d  raid0   -m  raid0
55 test_mkfs_multi   -d  raid0   -m  raid0   --mixed
56 test_mkfs_multi   -d  raid1   -m  raid1
57 test_mkfs_multi   -d  raid1   -m  raid1   --mixed
58 test_mkfs_multi   -d  raid10  -m  raid10
59 test_mkfs_multi   -d  raid10  -m  raid10  --mixed
60 test_mkfs_multi   -d  raid5   -m  raid5
61 test_mkfs_multi   -d  raid5   -m  raid5   --mixed
62 test_mkfs_multi   -d  raid6   -m  raid6
63 test_mkfs_multi   -d  raid6   -m  raid6   --mixed
64 test_mkfs_multi   -d  dup     -m  dup
65 test_mkfs_multi   -d  dup     -m  dup     --mixed
66
67 cleanup_loopdevs