X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=test%2Fmhmail%2Ftest-mhmail;h=c11e1938c1d17c9b2b846fccf6b480f3c4d8688c;hb=0f0af4e32a4d734209c16282b63f7cb1094e2699;hp=80e95c5cabe7d427912366dd3d043bac6980c8bf;hpb=8239546c65444333a91dcce8da55de6425ba96ec;p=mmh diff --git a/test/mhmail/test-mhmail b/test/mhmail/test-mhmail index 80e95c5..c11e193 100755 --- a/test/mhmail/test-mhmail +++ b/test/mhmail/test-mhmail @@ -18,8 +18,7 @@ fi # $1 is expected output file, provided by caller # $2 is mhmail switches, except for -body # $3 of -b signifies use -body switch, | signifies provide body on stdin -# $4 contains message body. When using stdin, can contain printf(1) format -# specifiers. +# $4 contains the message body. test_mhmail () { "${MH_OBJ_DIR}/test/fakesmtp" "$actual" $localport & @@ -30,7 +29,7 @@ test_mhmail () status=1 for i in 0 1 2 3 4 5 6 7 8 9; do if [ $3 = '|' ]; then - if printf "$4" | mhmail recipient@example.com $2 \ + if printf '%s' "$4" | mhmail recipient@example.com $2 \ -server 127.0.0.1 -port $localport; then status=0 break @@ -57,8 +56,7 @@ test_mhmail () sed -e 's/^Date:.*/Date:/' \ -e 's/^Resent-Date:.*/Resent-Date:/' \ - -e 's/^Message-ID:.*/Message-ID:/' \ - -e 's/^Content-ID:.*/Content-ID:/' "$actual" > "$actual".nodate + -e 's/^Message-ID:.*/Message-ID:/' "$actual" > "$actual".nodate rm -f "$actual" check "$actual".nodate "$1" @@ -73,7 +71,7 @@ actual_err=$MH_TEST_DIR/test-mhmail$$.actual_err # check -help # Verified behavior consistent with compiled sendmail. cat >$expected <$actual 2>&1 @@ -98,30 +97,30 @@ check $expected $actual # Verified same behavior as compiled mhmail. case `mhmail -v` in mhmail\ --*) ;; - * ) echo "$0: mhmail -v generated unexpected output" 1>&2 - failed=`expr ${failed:-0} + 1`;; + * ) printf '%s: mhmail -v generated unexpected output\n' "$0" >&2 + failed=`expr ${failed:-0} + 1`;; esac # check for missing argument to switches that require them -for switch in attach body cc from headerfield subject; do +for switch in attach body cc from headerfield subject to; do run_test "mhmail recipient -$switch" \ "mhmail: missing argument to -$switch" done -for switch in attach body cc from headerfield subject; do +for switch in attach body cc from headerfield subject to; do run_test "mhmail recipient -$switch -nosend" \ "mhmail: missing argument to -$switch" done -for switch in attach body cc from headerfield subject; do +for switch in attach body cc from headerfield subject to; do run_test "mhmail recipient -$switch -server 127.0.0.1" \ "mhmail: missing argument to -$switch" done -# check with no arguments +# check with no switches # That will just run inc, which we don't want to do anything, # so tell inc to just display its version. # Verified same behavior as compiled mhmail. -printf "inc: -version\n" >> $MH +printf 'inc: -version\n' >> $MH case `mhmail` in inc\ --*) ;; * ) echo "$0: mhmail generated unexpected output" 1>&2 @@ -287,7 +286,7 @@ test_mhmail "$expected" '-from sender@localhost -subject Test' '|' message # 2) use send(1) by added a send switch to the profile and # verifying that it gets used. # Not supported by compiled mhmail. -printf "send: -msgid\n" >> $MH +printf 'send: -msgid\n' >> $MH cat > "$expected" < "$expected" < "$expected" < "$expected" < "$expected" < +RCPT TO: +RCPT TO: +RCPT TO: +DATA +To: recipient@example.com, recipient2@example.com +Cc: cc1@example.com +Subject: Test +From: sender@localhost +Date: + +message +. +QUIT +EOF + +test_mhmail "$expected" \ + "-from sender@localhost -cc cc1@example.com -subject Test \ + -to recipient2@example.com" \ + -b message +[ ${failed:-0} -eq 0 ] || exit ${failed:-0} + + # check with no newline on stdin # Shows different behavior than compiled mhmail, which was silent in this case. cat > "$expected" <