summaryrefslogtreecommitdiff
path: root/tests/ubi-tests/runubitests.sh.in
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ubi-tests/runubitests.sh.in')
-rwxr-xr-xtests/ubi-tests/runubitests.sh.in42
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/ubi-tests/runubitests.sh.in b/tests/ubi-tests/runubitests.sh.in
new file mode 100755
index 0000000..a1b23c4
--- /dev/null
+++ b/tests/ubi-tests/runubitests.sh.in
@@ -0,0 +1,42 @@
+#!/bin/sh -euf
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+bindir=@bindir@
+libexecpath=@libexecdir@/mtd-utils
+TESTBINDIR=@testbindir@
+
+tests="mkvol_basic mkvol_bad mkvol_paral rsvol io_basic io_read io_update io_paral volrefcnt"
+
+fatal()
+{
+ echo "Error: $1" 1>&2
+ echo "FAILURE"
+ exit 1
+}
+
+usage()
+{
+ cat 1>&2 <<EOF
+Run all UBI tests for on an UBI device.
+Usage:
+ ${0##*/} <UBI device node>
+Example:
+ ${0##*/} /dev/ubi1 - test /dev/ubi1.
+EOF
+}
+
+if [ "$#" -lt 1 ]; then
+ usage
+ exit 1
+fi
+
+ubidev="$1"
+[ -c "$ubidev" ] || fatal "$ubidev is not character device"
+
+for t in $tests; do
+ echo "Running $t $ubidev"
+ "$TESTBINDIR/$t" "$ubidev" || fatal "$t failed"
+done
+
+echo "SUCCESS"