X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/1e0b1d40a6285c532b722f4584fa7ddde220deff..ca2f8cc7e93a21f9f04e0d976ca97feac4802e91:/test/mhshow/test-subpart diff --git a/test/mhshow/test-subpart b/test/mhshow/test-subpart index 161dceab..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` @@ -51,18 +69,23 @@ EOF # Write the expected output. cat > $expected < $actual 2>&1 -check "$expected" "$actual" +check "$expected" "$actual" : part 1.1 + + +# tests of -part/-type/-prefer cat > $msgfile < -Subject: mhshow -part/-type/prefer test +Subject: mhshow -part/-type/-prefer test Date: Thu, 29 Jan 2015 18:12:21 +0000 (GMT) Content-Type: multipart/mixed; boundary="BoundaryMixed" @@ -71,7 +94,7 @@ Content-type: multipart/alternative; boundary="BoundaryAlternative1" --BoundaryAlternative1 -Content-type: text/plain; charset=ISO-8859-1; format=flowed +Content-type: text/plain; charset=US-ASCII; format=flowed Content-transfer-encoding: 8bit This is the body text/plain part. @@ -104,48 +127,61 @@ This is the final text/plain signature part. EOF # Write the expected output. -cat > $expected < $expected < $actual 2>&1 -check "$expected" "$actual" + # 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" +check "$expected" "$actual" : part 1.2 # Write the expected output. cat > $expected < $actual 2>&1 -check "$expected" "$actual" +check "$expected" "$actual" : part conflicting text/plain, part 1 switches # Write the expected output. cat > $expected < $actual 2>&1 -check "$expected" "$actual" +check "$expected" "$actual" : part 2 # Write the expected output. cat > $expected < $actual 2>&1 -check "$expected" "$actual" +check "$expected" "$actual" : type text/plain # Write the expected output. cat > $expected < $actual 2>&1 -check "$expected" "$actual" +check "$expected" "$actual" : prefer text/plain + +finish_test exit $failed