X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/fa462ef71fbaf819397c59b2c07adf45a04af9f8..771706ac9fed2b902bd4d3ddccb15ee27b0f58ae:/test/mhfixmsg/test-mhfixmsg?ds=inline diff --git a/test/mhfixmsg/test-mhfixmsg b/test/mhfixmsg/test-mhfixmsg index 317d02b2..cc69aea7 100755 --- a/test/mhfixmsg/test-mhfixmsg +++ b/test/mhfixmsg/test-mhfixmsg @@ -14,15 +14,15 @@ fi . "${srcdir}/test/post/test-post-common.sh" +#### 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 + expected="$MH_TEST_DIR/test-mhfixmsg$$.expected" expected_err="$MH_TEST_DIR/test-mhfixmsg$$.expected_err" actual="$MH_TEST_DIR/test-mhfixmsg$$.actual" actual_err="$MH_TEST_DIR/test-mhfixmsg$$.actual_err" -#### Make sure that html-to-text conversion is what we expect. -LC_ALL=en_US.UTF-8; export LC_ALL - -set +e if grep mhfixmsg-format-text/html "${MH_TEST_DIR}/Mail/mhn.defaults" \ >/dev/null; then can_reformat_texthtml=1 @@ -33,15 +33,12 @@ if grep mhfixmsg-format-text/html "${MH_TEST_DIR}/Mail/mhn.defaults" \ #### relics from this test if it is writeable but doesn't already #### have a .w3m, and to not depend on whatever is in that if it #### does already exist, overwrite $HOME if using w3m. - HOME="$MHTMPDIR" - export HOME + HOME="$MHTMPDIR"; export HOME fi else - echo "$0: skipping -reformat check because \ - mhfixmsg-format-text/html is not available" + echo "$0: skipping -reformat check because no text browser was found" can_reformat_texthtml=0 fi -set -e # check -help @@ -51,7 +48,7 @@ Usage: mhfixmsg [+folder] [msgs] [switches] switches are: -decodetext 8bit|7bit -nodecodetext - -[no]textcodeset + -[no]textcharset -[no]reformat -[no]replacetextplain -[no]fixboundary @@ -60,6 +57,7 @@ Usage: mhfixmsg [+folder] [msgs] [switches] -outfile file -rmmproc program -normmproc + -[no]changecur -[no]verbose -version -help @@ -468,8 +466,7 @@ This is additional content before the first subpart of the multipart. ------- =_aaaaaaaaaa0 Content-Type: multipart/related; - type="multipart/alternative"; - boundary="subpart__1.1" + type="text/plain"; boundary="subpart__1.1" --subpart__1.1 Content-Type: text/plain; charset="iso-8859-1" @@ -518,8 +515,7 @@ This is additional content before the first subpart of the multipart. ------- =_aaaaaaaaaa0 Content-Type: multipart/related; - type="multipart/alternative"; - boundary="subpart__1.1" + type="text/plain"; boundary="subpart__1.1" --subpart__1.1 Content-Type: text/plain; charset="iso-8859-1" @@ -562,7 +558,7 @@ check "$expected" "$actual" # check attempted -decode of binary text #### Generated the encoded text below with: -#### $ printf '\x0d\xbd\xb2=\xbc\n' | base64 +#### $ printf '\x0\xbd\xb2=\xbc\n' | base64 cat >`mhpath new` <"$expected" <`mhpath new` <"$actual.err" -if grep "mhfixmsg: Can't convert .* to .* without iconv" "$actual.err" \ - >/dev/null; then - echo "$0: skipping -textcodeset check because nmh was built without iconv" - rm -f "$expected" "$actual" "$actual.err" -else +if test "$ICONV_ENABLED" -eq 1; then + run_prog mhfixmsg last -textcharset utf-8 -outfile "$actual" 2>&1 check "$expected" "$actual" - rm "$actual.err" +else + echo "$0: skipping -textcharset check because nmh was built without iconv" + rm -f "$expected" fi -set -e # check -nofixboundary @@ -780,7 +770,7 @@ fi cat >"$expected" < @@ -802,24 +792,16 @@ run_test 'mhfixmsg last -outfile '"$actual"' -verbose' \ check "$expected" "$actual" -# check that text/plain part is added to lone text/html in multipart/related -prepare_space >"$expected" <`mhpath new` < -------=_nmh-multipart1-- - ------=_Part_90310_101292502.1 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit @@ -843,32 +823,7 @@ Your email client does not support HTML messages ------=_Part_90310_101292502.1-- EOF -cat >`mhpath new` < - - HTML Content - - - This is the real content. - - -------=_Part_90310_101292502.1 -Content-Type: text/plain; charset="us-ascii" -Content-Transfer-Encoding: 7bit - -Your email client does not support HTML messages -------=_Part_90310_101292502.1-- -EOF +cp -p `mhpath last` "$expected" if [ $can_reformat_texthtml -eq 1 ]; then #### lynx inserts multiple blank lines, so squeeze them. @@ -1074,6 +1029,58 @@ run_prog mhfixmsg last -replacetextplain -noreplacetextplain -outfile "$actual" check "$expected" "$actual" +# check removal of extraneous trailing semicolon from header parameter list +cat >"$expected" <`mhpath new` <"$MH_TEST_DIR/Mail/rmmproc" <<'EOF' mv "$1" "$1.backup"