]> diplodocus.org Git - nmh/blobdiff - test/mhfixmsg/test-mhfixmsg
Don't check -replacetextplain in test-mhfixmsg if skipping -reformat
[nmh] / test / mhfixmsg / test-mhfixmsg
index 851c3c97f655918c71c3e05f9a1e84215d7048af..780e711c18d1bf998ae0e6382eadbc5562371cb9 100755 (executable)
@@ -41,6 +41,7 @@ Usage: mhfixmsg [+folder] [msgs] [switches]
   -nodecodetext
   -[no]textcodeset
   -[no]reformat
+  -[no]replacetextplain
   -[no]fixboundary
   -[no]fixcte
   -file file
@@ -243,6 +244,8 @@ 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
 
 
@@ -318,6 +321,8 @@ 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
 
 
@@ -388,6 +393,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
 
 
@@ -943,6 +950,110 @@ mhfixmsg last -outfile "$actual"
 check "$expected" "$actual"
 
 
+# check -replacetextplain
+cat >"$expected" <<EOF
+To: recipient@example.com
+From: sender@example.com
+Subject: mhfixmsg replacement of bad text/plain part test
+MIME-Version: 1.0
+Content-Type: multipart/alternative; boundary="----=_Part_876302"
+
+------=_Part_876302
+Content-Type: text/plain; charset="UTF-8"
+Content-Transfer-Encoding: 8bit
+
+Yes, the text/plain part really was empty.
+
+------=_Part_876302
+Content-Type: text/html; charset="UTF-8"
+Content-Transfer-Encoding: 8bit
+Content-Disposition: inline
+
+<html><head>
+<title>eticket</title>
+</head>
+<body>
+  Yes, the text/plain part really was empty.
+</body>
+</html>
+
+------=_Part_876302--
+EOF
+
+cat >`mhpath new` <<'EOF'
+To: recipient@example.com
+From: sender@example.com
+Subject: mhfixmsg replacement of bad text/plain part test
+MIME-Version: 1.0
+Content-Type: multipart/alternative; boundary="----=_Part_876302"
+
+------=_Part_876302
+Content-Type: text/plain; charset="iso-8859-15"
+Content-Transfer-Encoding: 7bit
+Content-Disposition: inline
+
+
+
+------=_Part_876302
+Content-Type: text/html; charset="UTF-8"
+Content-Transfer-Encoding: 8bit
+Content-Disposition: inline
+
+<html><head>
+<title>eticket</title>
+</head>
+<body>
+  Yes, the text/plain part really was empty.
+</body>
+</html>
+
+------=_Part_876302--
+EOF
+
+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" <<EOF
+To: recipient@example.com
+From: sender@example.com
+Subject: mhfixmsg replacement of bad text/plain part test
+MIME-Version: 1.0
+Content-Type: multipart/alternative; boundary="----=_Part_876302"
+
+------=_Part_876302
+Content-Type: text/plain; charset="iso-8859-15"
+Content-Transfer-Encoding: 7bit
+Content-Disposition: inline
+
+
+
+------=_Part_876302
+Content-Type: text/html; charset="UTF-8"
+Content-Transfer-Encoding: 8bit
+Content-Disposition: inline
+
+<html><head>
+<title>eticket</title>
+</head>
+<body>
+  Yes, the text/plain part really was empty.
+</body>
+</html>
+
+------=_Part_876302--
+EOF
+
+mhfixmsg last -replacetextplain -noreplacetextplain -outfile "$actual"
+check "$expected" "$actual"
+
+
 # check rmmproc
 cat >"$MH_TEST_DIR/Mail/rmmproc" <<'EOF'
 mv "$1" "$1.backup"