summaryrefslogtreecommitdiff
path: root/tests/misc-tests/031-qgroup-parent-child-relation/test.sh
blob: 2d66fd603709f464403d1e04b986bf31ac632ccc (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
#!/bin/bash
# Test that btrfs 'qgroup show' outputs the correct parent-child qgroup relation

source "$TEST_TOP/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

run_check $SUDO_HELPER "$TOP/btrfs" quota enable "$TEST_MNT"
run_check $SUDO_HELPER "$TOP/btrfs" qgroup create 1/0 "$TEST_MNT"
run_check $SUDO_HELPER "$TOP/btrfs" qgroup assign 0/5 1/0 "$TEST_MNT"
run_check $SUDO_HELPER "$TOP/btrfs" quota rescan -w "$TEST_MNT"

run_check_stdout $SUDO_HELPER "$TOP/btrfs" qgroup show --sort=-qgroupid \
	-p "$TEST_MNT" | tail -n 1 | grep -q "1/0" \
	|| _fail "parent qgroup check failed, please check the log"
run_check_stdout $SUDO_HELPER "$TOP/btrfs" qgroup show --sort=qgroupid \
	-c "$TEST_MNT" | tail -n 1 | grep -q "0/5" \
	|| _fail "child qgroup check failed, please check the log"

run_check_umount_test_dev "$TEST_MNT"