tests/test-commit-interactive.t
branchstable
changeset 29154 9d38a2061fd8
parent 28962 ad2cd2ef25d9
child 29180 8c5e880c7e25
--- a/tests/test-commit-interactive.t	Sun May 08 22:28:09 2016 -0400
+++ b/tests/test-commit-interactive.t	Fri May 13 07:19:59 2016 +0900
@@ -878,6 +878,32 @@
   abort: user quit
   [255]
 
+#if gettext
+
+Test translated help message
+
+str.lower() instead of encoding.lower(str) on translated message might
+make message meaningless, because some encoding uses 0x41(A) - 0x5a(Z)
+as the second or later byte of multi-byte character.
+
+For example, "\x8bL\x98^" (translation of "record" in ja_JP.cp932)
+contains 0x4c (L). str.lower() replaces 0x4c(L) by 0x6c(l) and this
+replacement makes message meaningless.
+
+This tests that translated help message is lower()-ed correctly.
+
+  $ LANGUAGE=ja
+  $ export LANGUAGE
+
+  $ hg commit -i --encoding cp932 2>&1 <<EOF | grep '^y - '
+  > ?
+  > q
+  > EOF
+  y - \x82\xb1\x82\xcc\x95\xcf\x8dX\x82\xf0\x8bL\x98^(yes) (esc)
+
+  $ LANGUAGE=
+#endif
+
 Skip
 
   $ hg commit -i <<EOF