summaryrefslogtreecommitdiff
path: root/tests/cli-tests/009-btrfstune/test.sh
blob: c7399465091dd8fb8f62ab0d1bb302eee4d778a8 (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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/bin/bash
# test all command line options of btrfstune

source "$TEST_TOP/common"

check_prereq btrfstune

setup_root_helper
prepare_test_dev

test_do_mkfs() {
	run_check $SUDO_HELPER "$TOP/mkfs.btrfs" -f "$@" "$TEST_DEV"
}

run_mayfail "$TOP/btrfstune" || true
run_check "$TOP/btrfstune" --help

run_mustfail "must not work on non-existent device" \
	"$TOP/btrfstune" -r file-does-not-exist

test_do_mkfs -O ^extref
run_check "$TOP/btrfstune" -r "$TEST_DEV"

test_do_mkfs -O ^skinny-metadata
run_check "$TOP/btrfstune" -x "$TEST_DEV"

test_do_mkfs -O ^no-holes
run_check "$TOP/btrfstune" -n "$TEST_DEV"

test_do_mkfs
run_check "$TOP/btrfstune" -S 1 "$TEST_DEV"
echo n | run_mayfail "$TOP/btrfstune" -S 0 "$TEST_DEV" || true
run_check "$TOP/btrfstune" -f -S 0 "$TEST_DEV"

run_mustfail "negative number for seeding status" \
	"$TOP/btrfstune" -f -S -1 "$TEST_DEV"

test_do_mkfs
echo n | run_mayfail "$TOP/btrfstune" -u "$TEST_DEV" || true
run_check "$TOP/btrfstune" -f -u "$TEST_DEV"

uuid="e315420e-3a1f-4d81-849e-93b68b85b76f"
baduuid="1-2-3-4-5"
test_do_mkfs
echo n | run_mayfail "$TOP/btrfstune" -U "$uuid" "$TEST_DEV" || true
run_check "$TOP/btrfstune" -f -U "$uuid" "$TEST_DEV"

run_mustfail "non-conforming uuid accepted" \
	"$TOP/btrfstune" -U "$baduuid" "$TEST_DEV"

test_do_mkfs
echo n | run_mayfail "$TOP/btrfstune" -m "$TEST_DEV" || true
run_check "$TOP/btrfstune" -f -m "$TEST_DEV"

uuid="2a9716ee-2786-4baa-ab85-f82c50fa883c"
test_do_mkfs
run_mayfail "$TOP/btrfstune" -M "$uuid" "$TEST_DEV" || true
test_do_mkfs
run_check "$TOP/btrfstune" -f -M "$uuid" "$TEST_DEV"

run_mustfail "non-conforming uuid accepted" \
	"$TOP/btrfstune" -M "$baduuid" "$TEST_DEV"