]> diplodocus.org Git - nmh/blobdiff - test/mhfixmsg/test-mhfixmsg
One final check to make sure the binary isn't stripped
[nmh] / test / mhfixmsg / test-mhfixmsg
index 5a310f11106a6ea9b67ef60ebbf08c1b576c8fe0..9cd0a0df7d45b55370195829b2666ce91d934058 100755 (executable)
@@ -14,7 +14,6 @@ fi
 
 . "${srcdir}/test/post/test-post-common.sh"
 
 
 . "${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"
 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 "${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
 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
     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"
   mhfixmsg last -outfile - -verbose 2>"$actual.err" | uniq >"$actual"
   check "$expected" "$actual"
   check "$expected.err" "$actual.err"
+else
+  rm -f "$expected"
 fi
 
 
 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" <<EOF
 # check handling of boundary string that appears in message body
 #
 cat >"$expected" <<EOF
@@ -319,6 +334,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"
   mhfixmsg last -outfile - -verbose 2>"$actual.err" | uniq >"$actual"
   check "$expected" "$actual"
   check "$expected.err" "$actual.err"
+else
+  rm -f "$expected"
 fi
 
 
 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"
   mhfixmsg last -nodecode -outfile - -verbose 2>"$actual.err" | uniq >"$actual"
   check "$expected" "$actual"
   check "$expected.err" "$actual.err"
+else
+  rm -f "$expected"
 fi
 
 
 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
 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"
   rm -f "$expected" "$actual" "$actual.err"
 else
   check "$expected" "$actual"
@@ -1004,9 +1023,13 @@ Content-Disposition: inline
 ------=_Part_876302--
 EOF
 
 ------=_Part_876302--
 EOF
 
-#### lynx inserts multiple blank lines, so use uniq to squeeze them.
-mhfixmsg last -replacetextplain -outfile - | uniq > "$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
 
 
 # check -noreplacetextplain