From 6c9aa8f2bf46e28de74ce11d85bcd448c0d0d529 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 1 Mar 2016 21:30:30 +0100 Subject: Fix str.translate() Issue #26464: Fix str.translate() when string is ASCII and first replacements removes character, but next replacement uses a non-ASCII character or a string longer than 1 character. Regression introduced in Python 3.5.0. --- Lib/test/test_unicode.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Lib/test/test_unicode.py') diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index fac8b7b6022..b258db1ffae 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -347,6 +347,10 @@ class UnicodeTest(string_tests.CommonTest, "[a]") self.assertEqual("[\xe9]".translate(str.maketrans({'\xe9': None})), "[]") + self.assertEqual('axb'.translate(str.maketrans({'a': None, 'b': '123'})), + "x123") + self.assertEqual('axb'.translate(str.maketrans({'a': None, 'b': '\xe9'})), + "x\xe9") # invalid Unicode characters invalid_char = 0x10ffff+1 -- cgit v1.2.3