summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2010-05-31 17:41:34 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2010-06-03 17:08:12 +0200
commitf9d407186fd7f8a6c07f9d8e191c9d928ab5c486 (patch)
tree9c7da8996992919d564986e808857450c07e19c6
parentee9e87c6c2b47db85ac27bac2f5939850d7e4849 (diff)
downloadjson-dbus-bridge-f9d407186fd7f8a6c07f9d8e191c9d928ab5c486.tar.gz
json-dbus-bridge-f9d407186fd7f8a6c07f9d8e191c9d928ab5c486.tar.xz
[tests] rework run_test.sh.in to run individual tests
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--tests/libtest.sh9
-rw-r--r--tests/run_test.sh.in44
2 files changed, 40 insertions, 13 deletions
diff --git a/tests/libtest.sh b/tests/libtest.sh
index 11fc34e..7d4c1e4 100644
--- a/tests/libtest.sh
+++ b/tests/libtest.sh
@@ -21,15 +21,8 @@
if [ -z "$libtest_tag" ]; then
libtest_tag=1
id=0
- error_count=0
fi
-jdb_status() {
- echo
- echo $error_count tests failed.
- return $error_count
-}
-
jdb_call() {
local url="$JDB_TEST_URL"
local data="$1"
@@ -89,7 +82,6 @@ jdb_test() {
if [ $? -ne 0 ]; then
echo " Failed:"
echo Sent: $data
- error_count=$[error_count+1]
return 1
fi
if [ "x$result" != "x$expect" ]; then
@@ -98,7 +90,6 @@ jdb_test() {
echo "Expected: $expect"
echo "Got: $result"
echo
- error_count=$[error_count+1]
return 1
else
if [ "$JDB_TEST_VERBOSE" = "yes" ]; then
diff --git a/tests/run_test.sh.in b/tests/run_test.sh.in
index 14c9e3d..98f87e8 100644
--- a/tests/run_test.sh.in
+++ b/tests/run_test.sh.in
@@ -1,13 +1,42 @@
#!/bin/bash
-. @abs_srcdir@/libtest.sh
+. "@abs_srcdir@/libtest.sh"
+tests=()
+if [ $# -eq 0 ]; then
+ names=`cd "@abs_srcdir@";echo *_test.sh`
+else
+ names="$@"
+fi
+for t in $names; do
+ name=
+ for tt in \
+ "@abs_srcdir@/$t" \
+ "@abs_srcdir@/${t}_test.sh" \
+ "@abs_srcdir@/$t.sh"; do
+ if [ -x "$tt" ]; then
+ name="$tt"
+ break
+ fi
+ done
+ if [ -z "$name" ]; then
+ echo "Test '$t' not found."
+ exit 1
+ fi
+ tests[${#tests[@]}]="$name"
+done
+
+errors=0
finish() {
kill $test_service_pid
kill $lighttpd_pid
- jdb_status
- exit $?
+ if [ $errors -eq 0 ]; then
+ echo "Success."
+ else
+ echo "$errors tests failed."
+ exit 1
+ fi
}
trap finish SIGINT
@@ -41,7 +70,14 @@ else
echo
fi
-. "@abs_srcdir@/basic_test.sh"
+export JDB_TEST_URL="http://localhost:8080/rpc"
+export JDB_TEST_SERVICE="com.pengutronix.jdb.test|/"
+export JDB_TEST_VERBOSE="yes"
+
+for t in "${tests[@]}"; do
+ echo running `basename "$t"`:
+ "$t" || errors=$[errors+1]
+done
finish