btrfs-progs: tests: iterate over fuzzed images and test various tools
authorDavid Sterba <dsterba@suse.com>
Fri, 23 Sep 2016 13:38:04 +0000 (15:38 +0200)
committerDavid Sterba <dsterba@suse.com>
Mon, 3 Oct 2016 13:07:21 +0000 (15:07 +0200)
Signed-off-by: David Sterba <dsterba@suse.com>
tests/fuzz-tests/004-misc-dumps/test.sh [new file with mode: 0755]

diff --git a/tests/fuzz-tests/004-misc-dumps/test.sh b/tests/fuzz-tests/004-misc-dumps/test.sh
new file mode 100755 (executable)
index 0000000..3fae2f6
--- /dev/null
@@ -0,0 +1,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