From 10b6b0b3a8288ed825d003788d9ff5d657f2e404 Mon Sep 17 00:00:00 2001 From: David Sterba Date: Tue, 2 Jun 2015 15:00:32 +0200 Subject: [PATCH] btrfs-progs: tests: add driver script for misc tests Signed-off-by: David Sterba --- Makefile.in | 6 +++++- tests/misc-tests.sh | 47 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100755 tests/misc-tests.sh diff --git a/Makefile.in b/Makefile.in index 14049b58..58aecc7c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -169,11 +169,15 @@ test-fsck: btrfs btrfs-image btrfs-corrupt-block btrfs-debug-tree mkfs.btrfs @echo " [TEST] fsck-tests.sh" $(Q)bash tests/fsck-tests.sh +test-misc: btrfs btrfs-image btrfs-corrupt-block btrfs-debug-tree mkfs.btrfs btrfstune + @echo " [TEST] misc-tests.sh" + $(Q)bash tests/misc-tests.sh + test-clean: @echo "Cleaning tests" $(Q)bash tests/clean-tests.sh -test: test-fsck test-convert +test: test-fsck test-convert test-misc # # NOTE: For static compiles, you need to have all the required libs diff --git a/tests/misc-tests.sh b/tests/misc-tests.sh new file mode 100755 index 00000000..5bbe9140 --- /dev/null +++ b/tests/misc-tests.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# +# Misc tests + +unset TOP +unset LANG +LANG=C +SCRIPT_DIR=$(dirname $(readlink -f $0)) +TOP=$(readlink -f $SCRIPT_DIR/../) +TEST_DEV=${TEST_DEV:-} +TEST_MNT=${TEST_MNT:-$TOP/tests/mnt} +RESULTS="$TOP/tests/misc-tests-results.txt" +IMAGE="$TOP/tests/test.img" + +source $TOP/tests/common + +# Allow child test to use $TOP and $RESULTS +export TOP +export RESULTS +# For custom script needs to verfiy recovery +export TEST_MNT +export LANG + +rm -f $RESULTS +mkdir -p $TEST_MNT || _fail "unable to create mount point on $TEST_MNT" + +# test rely on corrupting blocks tool +check_prereq btrfs-corrupt-block +check_prereq btrfs-image +check_prereq btrfstune +check_prereq btrfs + +# The tests are driven by their custom script called 'test.sh' + +for i in $(find $TOP/tests/misc-tests -maxdepth 1 -mindepth 1 -type d | sort) +do + echo " [TEST] $(basename $i)" + cd $i + echo "=== Entering $i" >> $RESULTS + if [ -x test.sh ]; then + ./test.sh + if [ $? -ne 0 ]; then + _fail "test failed for case $(basename $i)" + fi + fi + cd $TOP +done