From c495e799ed376af91ae2ddf6c4bcc592490fe294 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 16 Jan 2018 17:34:34 +0100 Subject: [PATCH] Skip test_readline.test_nonascii() on C locale (#5203) bpo-29240: On FreeBSD, if the LC_CTYPE locale is "C" or "POSIX", writing and reading non-ASCII bytes into/from a TTY works, but readline or ncurses ignores non-ASCII bytes on read. --- Lib/test/test_readline.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Lib/test/test_readline.py b/Lib/test/test_readline.py index b4c25dee9d..67ee9b7f7c 100644 --- a/Lib/test/test_readline.py +++ b/Lib/test/test_readline.py @@ -3,6 +3,7 @@ Very minimal unittests for parts of the readline module. """ from contextlib import ExitStack from errno import EIO +import locale import os import selectors import subprocess @@ -153,6 +154,13 @@ print("History length:", readline.get_current_history_length()) self.assertIn(b"History length: 0\r\n", output) def test_nonascii(self): + loc = locale.setlocale(locale.LC_CTYPE, None) + if loc in ('C', 'POSIX'): + # bpo-29240: On FreeBSD, if the LC_CTYPE locale is C or POSIX, + # writing and reading non-ASCII bytes into/from a TTY works, but + # readline or ncurses ignores non-ASCII bytes on read. + self.skipTest(f"the LC_CTYPE locale is {loc!r}") + try: readline.add_history("\xEB\xEF") except UnicodeEncodeError as err: -- 2.40.0