X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/afee8ed17a56617618fb7f963b111d7cf0fb56e7..8505e4e08c289ecd1b5d948c92e627d46749d583:/test/scan/test-scan-multibyte?ds=sidebyside diff --git a/test/scan/test-scan-multibyte b/test/scan/test-scan-multibyte index 1e9349a0..98dd9a26 100755 --- a/test/scan/test-scan-multibyte +++ b/test/scan/test-scan-multibyte @@ -47,7 +47,7 @@ Subject: =?utf-8?q?Sp=C4=B1n=CC=88al_Tap_=E2=86=92_Tap_into_America!?= Things are looking great! EOF -width=`${MH_OBJ_DIR}/test/getcwidth` +width=`${MH_OBJ_DIR}/test/getcwidth "→n̈"` if test $? -ne 0; then echo "getcwidth failed to run" exit 1 @@ -56,23 +56,29 @@ fi expected="$MH_TEST_DIR/$$.expected" actual="$MH_TEST_DIR/$$.actual" -if test "$width" -eq 1; then +if test "$width" -eq 3; then cat > "$expected" < "$expected" < $actual || exit 1 check "$expected" "$actual" -# check decoding with an invalid multibyte sequence +# +# Check decoding with an invalid multibyte sequence. We skip this test +# if we don't have iconv support, since it requires converting from one +# character set to another. Be sure we created the test file, though, because +# it's required for the test right after it. +# + cat >`mhpath new` < To: Some User @@ -89,13 +95,34 @@ cat >"$expected" <"$actual" -check "$expected" "$actual" +if test "$ICONV_ENABLED" -eq 1; then + LC_CTYPE=ISO-8859-1 MM_CHARSET=ISO-8859-1 scan -width 75 last >"$actual" + check "$expected" "$actual" +fi + +# +# Find out the width of our Unicode apostrophe (U+2019). Some implementations +# say it has a width of 2, but that seems totally bizarre to me. +# + +width=`${MH_OBJ_DIR}/test/getcwidth U+2019` +if test $? -ne 0; then + echo "getcwidth failed to run" + exit 1 +fi # check scan width with a valid multibyte sequence -cat >"$expected" <"$expected" <"$expected" <"$actual" check "$expected" "$actual"