]> diplodocus.org Git - nmh/blobdiff - test/scan/test-scan-multibyte
Moved "mhparam iconv" description to mhparam(1) man page and put
[nmh] / test / scan / test-scan-multibyte
index 255adacedb53315afdd7faf7398fac6deb4ac31b..fb9747d64892fc36532bc0a74f30f5429897b396 100755 (executable)
@@ -76,7 +76,7 @@ else
     exit 1
 fi
 
     exit 1
 fi
 
-scan -width 80 +inbox 11 > $actual || exit 1
+run_prog scan -width 80 +inbox 11 > $actual || exit 1
 check "$expected" "$actual"
 
 #
 check "$expected" "$actual"
 
 #
@@ -94,16 +94,17 @@ Message-Id: 12@test.nmh
 Subject: =?UTF-8?B?MjAxMyBOZXcgWWVhcuKAmXMgRGVhbHMhIFN0YXJ0IHRoZSB5ZWFy?=
        =?UTF-8?B?IHJpZ2h0IHdpdGggYmlnIHNhdmluZ3M=?=
 
 Subject: =?UTF-8?B?MjAxMyBOZXcgWWVhcuKAmXMgRGVhbHMhIFN0YXJ0IHRoZSB5ZWFy?=
        =?UTF-8?B?IHJpZ2h0IHdpdGggYmlnIHNhdmluZ3M=?=
 
-This message has an encoded Subject with an invalid character for the
-ISO-8859-1 character set, but it (U+2019) is valid UTF-8.
+This message has an encoded Subject with an invalid character for
+single-byte character sets, but it (U+2019) is valid UTF-8.
 EOF
 
 EOF
 
-cat >"$expected" <<EOF
+if test "$ICONV_ENABLED" -eq 1; then
+    cat >"$expected" <<EOF
   12  12/31 Test12             2013 New Year?s Deals! Start the year right
 EOF
 
   12  12/31 Test12             2013 New Year?s Deals! Start the year right
 EOF
 
-if test "$ICONV_ENABLED" -eq 1; then
-    LC_CTYPE=ISO-8859-1 MM_CHARSET=ISO-8859-1 scan -width 75 last >"$actual"
+    # Don't use run_prog here because it loses the environment setting.
+    LC_ALL=C scan -width 75 last >"$actual"
     check "$expected" "$actual"
 fi
 
     check "$expected" "$actual"
 fi
 
@@ -131,8 +132,31 @@ else
     echo "Unsupported width for U+2019: $width"
 fi
 
     echo "Unsupported width for U+2019: $width"
 fi
 
-LC_CTYPE=en_US.UTF-8 MM_CHARSET=UTF-8 scan -width 75 last >"$actual"
+run_prog scan -width 75 last >"$actual"
 check "$expected" "$actual"
 
 
 check "$expected" "$actual"
 
 
+if test "$ICONV_ENABLED" -eq 1; then
+  cat >"$expected" <<EOF
+  13  01/13 sender@example.co  <<The Subject: is an encoded single quote, 0x92.
+EOF
+
+  cat >"${MH_TEST_DIR}/Mail/inbox/13" <<EOF
+From: <sender@example.com>
+Subject: =?iso-8859-1?B?kgo=?=
+Date: Mon, 13 Jan 2014 14:18:33 -0600
+
+The Subject: is an encoded single quote, 0x92.  cpstripped() didn't
+properly count it when decoding, which could be seen with:
+
+    scan -format '%(decode{subject})%{body}'
+
+The scan listing was two characters too long.
+EOF
+
+  run_prog scan -width 80 last >"$actual"
+  check "$expected" "$actual"
+fi
+
+
 exit $failed
 exit $failed