summaryrefslogtreecommitdiff
path: root/tests/misc-tests/007-subvolume-sync/test.sh
blob: 243bb8ccfceddbfdadeab47c1ad52f72e3cc2fee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash
# test btrfs subvolume run normally with more than one subvolume
#
# - btrfs subvolume must not loop indefinitely
# - btrfs subvolume return 0 in normal case

source $TOP/tests/common

check_prereq mkfs.btrfs
check_prereq btrfs

setup_root_helper
prepare_test_dev

run_check $SUDO_HELPER $TOP/mkfs.btrfs -f "$TEST_DEV"
run_check_mount_test_dev

# to check following thing in both 1 and multiple subvolume case:
# 1: is subvolume sync loop indefinitely
# 2: is return value right
#
run_check $SUDO_HELPER $TOP/btrfs subvolume create "$TEST_MNT"/mysubvol1
run_check $SUDO_HELPER $TOP/btrfs subvolume create "$TEST_MNT"/mysubvol2
run_check $SUDO_HELPER $TOP/btrfs subvolume delete "$TEST_MNT"/mysubvol1
run_check $SUDO_HELPER $TOP/btrfs subvolume delete "$TEST_MNT"/mysubvol2
run_check $SUDO_HELPER $TOP/btrfs subvolume sync "$TEST_MNT"

run_check $SUDO_HELPER $TOP/btrfs subvolume create "$TEST_MNT"/mysubvol
run_check $SUDO_HELPER $TOP/btrfs subvolume delete "$TEST_MNT"/mysubvol
run_check $SUDO_HELPER $TOP/btrfs subvolume sync "$TEST_MNT"

run_check_umount_test_dev