# HG changeset patch # Parent ce6a6cc3765d808a2dbd50307433b6bd90bd9a0e Issue #28997: Skip when Readline fails non-ASCII input on Android diff -r ce6a6cc3765d Lib/test/test_readline.py --- a/Lib/test/test_readline.py Tue Dec 20 22:52:33 2016 +0800 +++ b/Lib/test/test_readline.py Fri Dec 23 22:50:59 2016 +0000 @@ -3,6 +3,7 @@ """ from contextlib import ExitStack from errno import EIO +from io import TextIOWrapper, BytesIO import os import selectors import subprocess @@ -138,9 +139,14 @@ def test_nonascii(self): try: - readline.add_history("\xEB\xEF") + encoder = TextIOWrapper(BytesIO(), newline="") + encoder.write("\xEB\xEF\r") + input = encoder.detach().getvalue() except UnicodeEncodeError as err: self.skipTest("Locale cannot encode test data: " + format(err)) + output = run_pty("import readline; print(ascii(input()))", input) + if ascii("\xEB\xEF").encode("ascii") not in output: + self.skipTest("Readline does not handle the test characters") script = r"""import readline