X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/9383ac2311caa190a93fd6694c6c82390cabf044..6c359ae82651d117af71c55ce1e56f3c5db18bfe:/test/mhfixmsg/test-mhfixmsg?ds=sidebyside diff --git a/test/mhfixmsg/test-mhfixmsg b/test/mhfixmsg/test-mhfixmsg index 152b11c7..5f33b79b 100755 --- a/test/mhfixmsg/test-mhfixmsg +++ b/test/mhfixmsg/test-mhfixmsg @@ -16,9 +16,10 @@ fi setup_test +check_exit '-eq 1' mhfixmsg - + #### Make sure that html-to-text conversion is what we expect. -require_locale en_US.utf-8 en_US.utf8 -LC_ALL=en_US.UTF-8; export LC_ALL +require_locale en_US.UTF-8 en_US.UTF8 en_US.utf-8 en_US.utf8 expected="$MH_TEST_DIR/test-mhfixmsg$$.expected" expected_err="$MH_TEST_DIR/test-mhfixmsg$$.expected_err" @@ -212,13 +213,13 @@ Content-Type: multipart/alternative; boundary="----=_nmh-multipart" ------=_nmh-multipart Content-Type: text/plain; charset="Windows-1252" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit Need to go! Need ... to ... go! ------=_nmh-multipart Content-Type: text/html; charset="Windows-1252" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit @@ -291,7 +292,7 @@ Content-Type: multipart/alternative; boundary="----=_nmh-multipart-3" ------=_nmh-multipart-3 Content-Type: text/plain; charset="Windows-1252" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit ------=_nmh-multipart ------=_nmh-multipart-1 @@ -299,7 +300,7 @@ Content-Transfer-Encoding: 8bit ------=_nmh-multipart-3 Content-Type: text/html; charset="Windows-1252" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit @@ -369,7 +370,7 @@ Content-Type: multipart/alternative; boundary="----=_nmh-multipart" ------=_nmh-multipart Content-Type: text/plain; charset="Windows-1252" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit Need to go! Need ... to ... go! @@ -443,7 +444,7 @@ Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" ------- =_aaaaaaaaaa0 Content-Type: text/plain; charset="iso-8859-1"; name="test4.txt" Content-Disposition: attachment; filename="test4.txt" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is a text/plain part. @@ -500,7 +501,7 @@ This is additional content after the last subpart of the multipart. Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: attachment; filename="test2.txt" Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA== -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is the second text/plain part. @@ -513,7 +514,7 @@ This is the third text/plain part. ------- =_aaaaaaaaaa0 Content-Type: text/plain; charset="iso-8859-1"; name="test4.txt" Content-Disposition: attachment; filename="test4.txt" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is the fourth text/plain part. @@ -586,7 +587,7 @@ MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" ------- =_aaaaaaaaaa0 -Content-Type: text/plain; charset=UTF-8; name="nul+square.txt" +Content-Type: text/plain; charset="UTF-8"; name="nul+square.txt" Content-Transfer-Encoding: base64 vbI9vAAK @@ -611,7 +612,7 @@ Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" ------- =_aaaaaaaaaa0 Content-Type: text/plain; charset="iso-8859-1" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is a text plain part @@ -697,10 +698,11 @@ From: sender@example.com Subject: mhfixmsg successful decode of text/plain with failed binary decode MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" +Content-Transfer-Encoding: binary ------- =_aaaaaaaaaa0 Content-Type: text/plain; charset="iso-8859-1" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is a text plain part @@ -725,9 +727,10 @@ From: sender@example.com Subject: mhfixmsg binary decode test MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=\"----- =_aaaaaaaaaa0\" +Content-Transfer-Encoding: binary ------- =_aaaaaaaaaa0 -Content-Type: text/plain; charset=UTF-8; name=\"nul+square.txt\" +Content-Type: text/plain; charset=\"UTF-8\"; name=\"nul+square.txt\" Content-Transfer-Encoding: binary " " @@ -750,7 +753,7 @@ Content-Type: multipart/alternative; boundary="----=_nmh-multipart" ------=_nmh-multipart Content-Type: text/plain; charset="ISO-8859-1" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit Mile $0.00 Time $78.71 @@ -821,6 +824,7 @@ From: sender@example.com Subject: mhfixmsg textcharset test MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" +Content-Transfer-Encoding: 8bit ------- =_aaaaaaaaaa0 Content-Type: text/plain; charset="utf-8"; name="square.txt" @@ -1068,6 +1072,7 @@ fi # check handling of rfc822 message type +# also, checks -fixboundary start_test "handling of rfc822 message type" cat >"$expected" < @@ -1105,7 +1110,7 @@ Date: Fri, 29 Sep 2006 00:00:00 Message-Id: @test.nmh Subject: message with message/rfc822 attachment MIME-Version: 1.0 -Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaa0" +Content-Type: multipart/mixed; boundary="----- =badboundary" and some garbage before the attachment @@ -1198,13 +1203,12 @@ Content-Type: multipart/alternative; boundary="----=_Part_876302" ------=_Part_876302 Content-Type: text/plain; charset="UTF-8" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit Yes, the text/plain part really was empty. ------=_Part_876302 Content-Type: text/html; charset="UTF-8" -Content-Transfer-Encoding: 8bit Content-Disposition: inline @@ -1234,7 +1238,6 @@ Content-Disposition: inline ------=_Part_876302 Content-Type: text/html; charset="UTF-8" -Content-Transfer-Encoding: 8bit Content-Disposition: inline @@ -1276,7 +1279,6 @@ Content-Disposition: inline ------=_Part_876302 Content-Type: text/html; charset="UTF-8" -Content-Transfer-Encoding: 8bit Content-Disposition: inline @@ -1428,14 +1430,14 @@ Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: attachment; filename="test1.txt" Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA== -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is the text/plain part. ------- =_aaaaaaaaaa0 Content-Type: text/html; charset="iso-8859-1"; name="test2.txt" Content-Disposition: attachment; filename="test2.txt" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit @@ -1489,7 +1491,7 @@ Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: attachment; filename="test1.txt" Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA== -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is the text/plain part. @@ -1546,14 +1548,14 @@ Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: attachment; filename="test1.txt" Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA== -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is the text/plain part. ------- =_aaaaaaaaaa0 Content-Type: application/ics; charset="iso-8859-1"; name="invite.ics" Content-Disposition: attachment; filename="invite.ics" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit BEGIN:VCALENDAR VERSION:2.0 @@ -1614,14 +1616,14 @@ Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0" Content-Type: text/plain; charset="iso-8859-1" Content-Disposition: attachment; filename="test1.txt" Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA== -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit This is the text/plain part. ------- =_aaaaaaaaaa0 Content-Type: application/ics; charset="iso-8859-1"; name="invite.ics" Content-Disposition: attachment; filename="invite.ics" -Content-Transfer-Encoding: 8bit +Content-Transfer-Encoding: 7bit BEGIN:VCALENDAR VERSION:2.0 @@ -1712,9 +1714,74 @@ set +e run_prog mhfixmsg -file - -outfile - <`mhpath last` >"$actual" 2>/dev/null set -e #### Expected output is identical to the input message. +check `mhpath last` "$actual" 'keep first' + + +start_test "pass through message with relative folder path with parse error" +#### Factor out leading portion of current folder path and make it relative. +pwd=`pwd` +set +e +run_prog mhfixmsg +./`mhpath | sed "s%^$pwd/%%"` last -out - >"$actual" 2>/dev/null +set -e +folder -f +inbox >/dev/null +#### Expected output is identical to the input message. check `mhpath last` "$actual" +start_test "fix RFC 2047 encoded header parameters" +#### Also, add C-T-E:8bit to the message headers. +cat >"$expected" <`mhpath new` <"$actual" 2>/dev/null +check "$expected" "$actual" + + # make sure there are no tmp files left over find "$MH_TEST_DIR/Mail" \( -name 'mhfix*' -o -name ',mhfix*' \) -print \ >"$actual"