summaryrefslogtreecommitdiff
path: root/tests/fuzz-tests/004-misc-dumps/test.sh
blob: 3fae2f65752f47941eafe2944523c8850c3fd85e (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
#!/bin/bash

# iterate over all fuzzed images and run various tools, do not expect to repair
# or dump succesfully, must not crash at least

source $TOP/tests/common

setup_root_helper
check_prereq btrfs

# redefine the one provided by common
check_image() {
	local image

	image=$1
	run_mayfail $TOP/btrfs inspect-internal dump-tree "$image"
	run_mayfail $TOP/btrfs inspect-internal dump-super "$image"
	run_mayfail $TOP/btrfs inspect-internal dump-super -Ffa "$image"
	run_mayfail $TOP/btrfs inspect-internal tree-stats "$image"
	run_check cp "$image" "$image".scratch
	run_mayfail $TOP/btrfs rescue super-recover -y -v "$image".scratch
	run_check cp "$image" "$image".scratch
	run_mayfail $TOP/btrfs rescue chunk-recover -y -v "$image".scratch
	run_check cp "$image" "$image".scratch
	run_mayfail $TOP/btrfs rescue zero-log "$image".scratch
	rm -- "$image".scratch
}

check_all_images $TOP/tests/fuzz-tests/images

exit 0