Use case statement to check for proper result from "mhparam sbackup".
[mmh] / test / mhpath / test-mhpath
index 71ee9ea..84f14e2 100755 (executable)
@@ -27,16 +27,20 @@ Usage: mhpath [+folder] [msgs] [switches]
   -version
   -help
 EOF
-# The exit status is 1 with -help, so invert it to prevent
-# triggering immediate exit due to set -e.
-! mhpath -help > $actual 2>&1
+# The exit status is 1 with -help, so temporarily disable -e.
+set +e
+mhpath -help > $actual 2>&1
+set -e
 check $expected $actual
 
-# check -version
-if ! mhpath -v | grep '^mhpath --' > /dev/null; then
-  echo "$0: mhpath -v generated unexpected output" 1>&2
-  failed=`expr ${failed:-0} + 1`
-fi
+# check -version, which returns non-zero exit status
+set +e
+case `mhpath -v` in
+  mhpath\ --*) ;;
+  *          ) echo "$0: mhpath -v generated unexpected output" 1>&2
+               failed=`expr ${failed:-0} + 1`;;
+esac
+set -e
 
 # check +
 run_test "mhpath +" "$MH_TEST_DIR/Mail"