X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/207d657cf4495be3eb44ccde94e807692665f5e2..24ca4cf3b0f5e02735ea716163a880b2b5cc8b49:/test/post/test-post-basic?ds=inline diff --git a/test/post/test-post-basic b/test/post/test-post-basic index 74ef5e11..39915e71 100755 --- a/test/post/test-post-basic +++ b/test/post/test-post-basic @@ -12,11 +12,13 @@ fi . "${srcdir}/test/post/test-post-common.sh" +check_exit '-eq 1' "$MH_LIBEXEC_DIR/post" - + # # Basic test - Simple message, single user, single recipient. Note that # we test dot-stuffing here as well. # - +start_test 'simple message' cat > "${MH_TEST_DIR}/Mail/draft" < To: Somebody Else @@ -34,6 +36,8 @@ DATA From: Mr Nobody To: Somebody Else Subject: Test +MIME-Version: 1.0 +Content-Type: text/plain; charset="us-ascii" Date: This is a test @@ -47,7 +51,7 @@ test_post "${testname}.actual" "${testname}.expected" # # Make sure a draft without a From: is rejected # - +start_test 'reject draft without a From:' cat > "${MH_TEST_DIR}/Mail/draft" < Subject: Blank Test @@ -65,6 +69,7 @@ send: message not delivered to anyone" # Make sure that empty Nmh-* header lines are ignored, and that post # warns about non-empty ones. # +start_test 'ignore Nmh-* header lines' cat > "${MH_TEST_DIR}/Mail/draft" < To: Somebody Else @@ -84,6 +89,8 @@ DATA From: Mr Nobody To: Somebody Else Subject: Test +MIME-Version: 1.0 +Content-Type: text/plain; charset="us-ascii" Date: This is a test @@ -101,5 +108,102 @@ test_post "${testname}.actual" "${testname}.expected" \ check "${testname}.send_output" "${testname}.expected_send_output" +# +# 8-bit without 8BITMIME support +# +start_test '8-bit without 8BITMIME support' +cat > "${MH_TEST_DIR}/Mail/draft" < +To: Somebody Else +Subject: Test +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Content-Transfer-Encoding: 8bit + +This is a test +. +EOF + +cat > "${testname}.expected" < "${testname}.err.expected" <"${testname}.err" +set +e +check "${testname}.err" "${testname}.err.expected" + +# +# 8-bit with 8BITMIME support +# +start_test '8-bit with 8BITMIME support' +# Cheat: SMTPUTF8 enables 8BITMIME in fakestmp +SMTPUTF8=1; export SMTPUTF8 +cat > "${testname}.expected" < BODY=8BITMIME +RCPT TO: +DATA +From: Mr Nobody +To: Somebody Else +Subject: Test +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Content-Transfer-Encoding: 8bit +Date: + +This is a test +.. +. +QUIT +EOF +test_post "${testname}.actual" "${testname}.expected" + + +# +# 8-bit with 8BITMIME support, inferred from content +# +start_test '8-bit, inferred, with 8BITMIME support' +cat > "${MH_TEST_DIR}/Mail/draft" < +To: Somebody Else +Subject: Test +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" + +This is a test, with a non-ascii character: § +. +EOF + +cat > "${testname}.expected" < BODY=8BITMIME +RCPT TO: +DATA +From: Mr Nobody +To: Somebody Else +Subject: Test +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Date: + +This is a test, with a non-ascii character: § +.. +. +QUIT +EOF +test_post "${testname}.actual" "${testname}.expected" + +finish_test exit ${failed:-0}