From: David Levine Date: Sat, 7 Jan 2017 22:38:27 +0000 (-0500) Subject: Fixed a couple of tests to not fail when there is no text browser. X-Git-Url: https://diplodocus.org/git/nmh/commitdiff_plain/5b410a0888990f4cddb9c2859d039d09089a8043?hp=16f27f5ba6e6f49a4d3561d10eaeedd1165ad33e Fixed a couple of tests to not fail when there is no text browser. --- diff --git a/test/mhfixmsg/test-mhfixmsg b/test/mhfixmsg/test-mhfixmsg index ec384f6d..7fc95d3f 100755 --- a/test/mhfixmsg/test-mhfixmsg +++ b/test/mhfixmsg/test-mhfixmsg @@ -28,8 +28,7 @@ actual_err="$MH_TEST_DIR/test-mhfixmsg$$.actual_err" mhn_defaults="$MH_INST_DIR${nmhetcdir}/mhn.defaults" -if grep mhfixmsg-format-text/html "${mhn_defaults}" \ - >/dev/null; then +if grep mhfixmsg-format-text/html "${mhn_defaults}" >/dev/null; then can_reformat_texthtml=1 if grep 'mhfixmsg-format-text/html.*w3m' "${mhn_defaults}" \ >/dev/null; then @@ -1349,27 +1348,29 @@ run_test 'mhfixmsg last -outfile '"$actual" '' check "$expected" "$actual" -# check rmmproc -start_test "rmmproc" -cat >"$MH_TEST_DIR/Mail/rmmproc" <<'EOF' +if [ $can_reformat_texthtml -eq 1 ]; then + # check rmmproc + start_test "rmmproc" + cat >"$MH_TEST_DIR/Mail/rmmproc" <<'EOF' mv "$1" "$1.backup" EOF -chmod a+x "${MH_TEST_DIR}/Mail/rmmproc" -echo "rmmproc: ${MH_TEST_DIR}/Mail/rmmproc" >>"$MH" -cp "${MH_TEST_DIR}/Mail/inbox/16" "${MH_TEST_DIR}/Mail/inbox/16.original" + chmod a+x "${MH_TEST_DIR}/Mail/rmmproc" + echo "rmmproc: ${MH_TEST_DIR}/Mail/rmmproc" >>"$MH" + cp "${MH_TEST_DIR}/Mail/inbox/16" "${MH_TEST_DIR}/Mail/inbox/16.original" -run_test 'mhfixmsg 16' '' -check "${MH_TEST_DIR}/Mail/inbox/16.backup" \ - "${MH_TEST_DIR}/Mail/inbox/16.original" + run_test 'mhfixmsg 16' '' + check "${MH_TEST_DIR}/Mail/inbox/16.backup" \ + "${MH_TEST_DIR}/Mail/inbox/16.original" -# check -normmproc -start_test "-normmproc" -cp "${MH_TEST_DIR}/Mail/inbox/21" "${MH_TEST_DIR}/Mail/inbox/22" + # check -normmproc + start_test "-normmproc" + cp "${MH_TEST_DIR}/Mail/inbox/21" "${MH_TEST_DIR}/Mail/inbox/22" -run_test 'mhfixmsg 21 -normmproc' -check "${MH_TEST_DIR}/Mail/inbox/22" \ - "${MH_TEST_DIR}/Mail/inbox/,21" 'keep first' + run_test 'mhfixmsg 21 -normmproc' + check "${MH_TEST_DIR}/Mail/inbox/22" \ + "${MH_TEST_DIR}/Mail/inbox/,21" 'keep first' +fi # check -rmmproc diff --git a/test/mhshow/test-subpart b/test/mhshow/test-subpart index 27fb9077..2a799772 100755 --- a/test/mhshow/test-subpart +++ b/test/mhshow/test-subpart @@ -20,6 +20,24 @@ setup_test expected=$MH_TEST_DIR/$$.expected actual=$MH_TEST_DIR/$$.actual +mhn_defaults="$MH_INST_DIR${nmhetcdir}/mhn.defaults" + +if grep mhfixmsg-format-text/html "${mhn_defaults}" >/dev/null; then + can_reformat_texthtml=1 + if grep 'mhfixmsg-format-text/html.*w3m' "${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 html checks because no text browser was found" + can_reformat_texthtml=0 +fi + # Write message with a text/plain subpart. msgfile=`mhpath new` msgnum=`basename $msgfile` @@ -57,6 +75,7 @@ This is the text/plain part. EOF # check it +start_test 'text/plain part' run_prog mhshow -part 1.1 -form mhl.null $msgnum > $actual 2>&1 check "$expected" "$actual" : part 1.1 @@ -108,17 +127,20 @@ This is the final text/plain signature part. EOF # Write the expected output. -cat > $expected < $expected < $actual 2>&1 -check "$expected" "$actual" : part 1.1.1 + # check it + start_test 'text/html part' + # The sed command removes blank lines and leading space that lynx inserts. + run_prog mhshow -part 1.1.1 -form mhl.null $msgnum | + sed '/^$/D; s/^ *//;' > $actual 2>&1 + check "$expected" "$actual" : part 1.1.1 +fi # Write the expected output. cat > $expected < $actual 2>&1 check "$expected" "$actual" : part 1.2 @@ -139,6 +162,7 @@ This is the body text/plain part. EOF # check it +start_test 'conflicting text/plain, part 1 switches' run_prog mhshow -prefer text/plain -part 1 -form mhl.null $msgnum > $actual 2>&1 check "$expected" "$actual" : part conflicting text/plain, part 1 switches @@ -151,6 +175,7 @@ This is the final text/plain signature part. EOF # check it +start_test 'final text/plain part' run_prog mhshow -part 2 -form mhl.null $msgnum > $actual 2>&1 check "$expected" "$actual" : part 2 @@ -165,6 +190,7 @@ This is the final text/plain signature part. EOF # check it +start_test 'all text/plain parts' run_prog mhshow -type text/plain -form mhl.null $msgnum > $actual 2>&1 check "$expected" "$actual" : type text/plain @@ -178,7 +204,10 @@ _______________________________________________ This is the final text/plain signature part. EOF +start_test 'prefer text/plain' run_prog mhshow -prefer text/plain -form mhl.null $msgnum > $actual 2>&1 check "$expected" "$actual" : prefer text/plain + +finish_test exit $failed