X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/25b5d3aa852eb145beea1d3abcbe57e75f2e59a7..e537b780f7aea8df01ddca1976f8c128d9c1fb55:/test/scan/test-scan-multibyte diff --git a/test/scan/test-scan-multibyte b/test/scan/test-scan-multibyte index 255adace..3ce5df76 100755 --- a/test/scan/test-scan-multibyte +++ b/test/scan/test-scan-multibyte @@ -26,6 +26,7 @@ if test "${MULTIBYTE_ENABLED}" -ne 1; then test_skip "configure did not detect multibyte support" fi +require_locale en_US.utf-8 en_US.utf8 LC_ALL=en_US.UTF-8; export LC_ALL # @@ -65,18 +66,18 @@ actual="$MH_TEST_DIR/$$.actual" if test "$width" -eq 3; then cat > "$expected" < "$expected" < $actual || exit 1 +run_prog scan -width 80 +inbox 11 > $actual || exit 1 check "$expected" "$actual" # @@ -94,16 +95,17 @@ Message-Id: 12@test.nmh 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 -cat >"$expected" <"$expected" <"$actual" + # Don't use run_prog here because it loses the environment setting. + LC_ALL=C scan -width 74 last >"$actual" check "$expected" "$actual" fi @@ -131,8 +133,31 @@ else 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 74 last >"$actual" check "$expected" "$actual" +if test "$ICONV_ENABLED" -eq 1; then + cat >"$expected" <"${MH_TEST_DIR}/Mail/inbox/13" < +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