summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.com>2016-03-20 15:34:10 +0100
committerDavid Sterba <dsterba@suse.com>2016-05-02 14:39:46 +0200
commitd75f0c12d2de062dd84c2aefa640c21dc0571c5b (patch)
tree490a6d742dde39015d9d1ad2bf9f85488effde6c
parent350563bf794b0fc404f0952fac7fa6cbba4987ec (diff)
btrfs-progs: tests: add support for command line coverage tests
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r--Makefile.in4
-rwxr-xr-xtests/cli-tests.sh41
-rwxr-xr-xtests/cli-tests/001-btrfs/test.sh15
3 files changed, 60 insertions, 0 deletions
diff --git a/Makefile.in b/Makefile.in
index cda90eff..a01b957f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -215,6 +215,10 @@ test-fuzz: btrfs
@echo " [TEST] fuzz-tests.sh"
$(Q)bash tests/fuzz-tests.sh
+test-cli: btrfs
+ @echo " [TEST] cli-tests.sh"
+ $(Q)bash tests/cli-tests.sh
+
test-clean:
@echo "Cleaning tests"
$(Q)bash tests/clean-tests.sh
diff --git a/tests/cli-tests.sh b/tests/cli-tests.sh
new file mode 100755
index 00000000..e65e7f50
--- /dev/null
+++ b/tests/cli-tests.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+#
+# command line interface coverage tests
+
+unset TOP
+unset LANG
+LANG=C
+SCRIPT_DIR=$(dirname $(readlink -f $0))
+TOP=$(readlink -f $SCRIPT_DIR/../)
+TEST_DEV=${TEST_DEV:-}
+RESULTS="$TOP/tests/cli-tests-results.txt"
+IMAGE="$TOP/tests/test.img"
+
+source $TOP/tests/common
+
+export TOP
+export RESULTS
+export LANG
+export IMAGE
+
+rm -f $RESULTS
+
+check_prereq btrfs
+
+# The tests are driven by their custom script called 'test.sh'
+
+for i in $(find $TOP/tests/cli-tests -maxdepth 1 -mindepth 1 -type d \
+ ${TEST:+-name "$TEST"} | sort)
+do
+ name=$(basename $i)
+ cd $i
+ if [ -x test.sh ]; then
+ echo "=== Entering $i" >> $RESULTS
+ echo " [TEST/cli] $name"
+ ./test.sh
+ if [ $? -ne 0 ]; then
+ _fail "test failed for case $(basename $i)"
+ fi
+ fi
+ cd $TOP
+done
diff --git a/tests/cli-tests/001-btrfs/test.sh b/tests/cli-tests/001-btrfs/test.sh
new file mode 100755
index 00000000..1de2f6f2
--- /dev/null
+++ b/tests/cli-tests/001-btrfs/test.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+# test commands of btrfs
+
+source $TOP/tests/common
+
+check_prereq btrfs
+
+# returns 1
+run_mayfail $TOP/btrfs || true
+run_check $TOP/btrfs version
+run_check $TOP/btrfs version --
+run_check $TOP/btrfs help
+run_check $TOP/btrfs help --
+run_check $TOP/btrfs --help
+run_check $TOP/btrfs --help --full