diff --git a/Lib/test/test_readline.py b/Lib/test/test_readline.py index b4c25dee9d3..67ee9b7f7cf 100644 --- a/Lib/test/test_readline.py +++ b/Lib/test/test_readline.py @@ -3,6 +3,7 @@ """ from contextlib import ExitStack from errno import EIO +import locale import os import selectors import subprocess @@ -153,6 +154,13 @@ def test_auto_history_disabled(self): 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: