X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/28c3595a77a8c942bee1057085776dad0b3d53f4..26c2b1ef1709cd7b34fe3e78995768a369e0f116:/test/mkstemp/test-mkstemp diff --git a/test/mkstemp/test-mkstemp b/test/mkstemp/test-mkstemp index 38949369..e5a91b57 100755 --- a/test/mkstemp/test-mkstemp +++ b/test/mkstemp/test-mkstemp @@ -20,20 +20,32 @@ expected="$MH_TEST_DIR"/$$.expected actual="$MH_TEST_DIR"/$$.actual mkstemp="${MH_LIB_DIR}/mkstemp" +$mkstemp -help | grep suffix >/dev/null && has_mkstemps=1 || has_mkstemps=0 cd "$MHTMPDIR" # check -help -cat >$expected <<'EOF' -Usage: mkstemp [switches] - switches are: - -directory - -prefix - -suffix - -version - -help -EOF +if [ $has_mkstemps -eq 1 ]; then + cat >$expected <<-'EOF' + Usage: mkstemp [switches] + switches are: + -directory + -prefix + -suffix + -version + -help + EOF +else + cat >$expected <<-'EOF' + Usage: mkstemp [switches] + switches are: + -directory + -prefix + -version + -help + EOF +fi $mkstemp -h >$actual 2>&1 check $expected $actual @@ -42,9 +54,9 @@ check $expected $actual # check -version # Verified same behavior as compiled mhmail. case `$mkstemp -v` in - mkstemp\ --*) ;; - * ) printf '%s: mkstemp -v generated unexpected output\n' "$0" >&2 - failed=`expr ${failed:-0} + 1`;; + mkstemp\ --*) ;; + * ) printf '%s: mkstemp -v generated unexpected output\n' "$0" >&2 + failed=`expr ${failed:-0} + 1`;; esac @@ -60,22 +72,27 @@ fi # check -directory tmpfile=`$mkstemp -directory "$MHTMPDIR"` [ -f "$tmpfile" ] && rm "$tmpfile" || failed=`expr ${failed:-0} + 1` +# Rely on exit status of grep to detect failure and terminate due to set -e: check_tmpfile=`echo $tmpfile | grep "^$MHTMPDIR/......$" >/dev/null` -run_test `echo $check_tmpfile` '' +run_test 'eval echo $check_tmpfile' '' # check -prefix tmpfile=`$mkstemp -prefix mkstemptest` [ -f "$tmpfile" ] && rm "$tmpfile" || failed=`expr ${failed:-0} + 1` +# Rely on exit status of grep to detect failure and terminate due to set -e: check_tmpfile=`echo $tmpfile | grep '^mkstemptest......$' >/dev/null` -run_test `echo $check_tmpfile` '' +run_test 'eval echo $check_tmpfile' '' -# check -suffix -tmpfile=`$mkstemp -suffix .txt` -[ -f "$tmpfile" ] && rm "$tmpfile" || failed=`expr ${failed:-0} + 1` -check_tmpfile=`echo $tmpfile | grep '^......\.txt$' >/dev/null` -run_test `echo $check_tmpfile` '' +if [ $has_mkstemps -eq 1 ]; then + # check -suffix + tmpfile=`$mkstemp -suffix .txt` + [ -f "$tmpfile" ] && rm "$tmpfile" || failed=`expr ${failed:-0} + 1` + # Rely on exit status of grep to detect failure and terminate due to set -e: + check_tmpfile=`echo $tmpfile | grep '^......\.txt$' >/dev/null` + run_test 'eval echo $check_tmpfile' '' +fi exit $failed