X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/74e9deda951a5b0151e18225c87f567f72ee11a4..01a5e0594cb7590536a7d9903081872185c1e72c:/test/mhfixmsg/test-mhfixmsg diff --git a/test/mhfixmsg/test-mhfixmsg b/test/mhfixmsg/test-mhfixmsg index 1a01de2f..9cd0a0df 100755 --- a/test/mhfixmsg/test-mhfixmsg +++ b/test/mhfixmsg/test-mhfixmsg @@ -14,7 +14,6 @@ fi . "${srcdir}/test/post/test-post-common.sh" - expected="$MH_TEST_DIR/test-mhfixmsg$$.expected" expected_err="$MH_TEST_DIR/test-mhfixmsg$$.expected_err" actual="$MH_TEST_DIR/test-mhfixmsg$$.actual" @@ -24,8 +23,18 @@ set +e if grep mhfixmsg-format-text/html "${MH_TEST_DIR}/Mail/mhn.defaults" \ >/dev/null; then can_reformat_texthtml=1 + if grep 'mhfixmsg-format-text/html.*w3m' "${MH_TEST_DIR}/Mail/mhn.defaults" \ + >/dev/null; then + #### w3m uses $HOME/.w3m/, and creates it if it doesn't exist. To + #### support testing with non-writeable $HOME, and to not leave + #### 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 + fi else - echo "$0: skipping -reformat check because + echo "$0: skipping -reformat check because \ mhfixmsg-format-text/html is not available" can_reformat_texthtml=0 fi @@ -244,9 +253,15 @@ mhfixmsg: 12 part 1, decode text/html; charset=\"Windows-1252\"" \ mhfixmsg last -outfile - -verbose 2>"$actual.err" | uniq >"$actual" check "$expected" "$actual" check "$expected.err" "$actual.err" +else + rm -f "$expected" fi +# check implicit -file with absolute pathname +run_test "mhfixmsg `mhpath last` -outfile /dev/null" '' + + # check handling of boundary string that appears in message body # cat >"$expected" <"$actual.err" | uniq >"$actual" check "$expected" "$actual" check "$expected.err" "$actual.err" +else + rm -f "$expected" fi @@ -389,6 +406,8 @@ if [ $can_reformat_texthtml -eq 1 ]; then mhfixmsg last -nodecode -outfile - -verbose 2>"$actual.err" | uniq >"$actual" check "$expected" "$actual" check "$expected.err" "$actual.err" +else + rm -f "$expected" fi @@ -698,7 +717,7 @@ set +e mhfixmsg last -textcodeset utf-8 -outfile "$actual" 2>"$actual.err" if grep "mhfixmsg: Can't convert .* to .* without iconv" "$actual.err" \ >/dev/null; then - echo skipping -textcodeset check because nmh was built without iconv + echo "$0: skipping -textcodeset check because nmh was built without iconv" rm -f "$expected" "$actual" "$actual.err" else check "$expected" "$actual" @@ -1004,8 +1023,14 @@ Content-Disposition: inline ------=_Part_876302-- EOF -mhfixmsg last -replacetextplain -outfile "$actual" -check "$expected" "$actual" +if [ $can_reformat_texthtml -eq 1 ]; then + #### lynx inserts multiple blank lines, so use uniq to squeeze them. + mhfixmsg last -replacetextplain -outfile - | uniq > "$actual" + check "$expected" "$actual" +else + rm -f "$expected" +fi + # check -noreplacetextplain cat >"$expected" <