From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Wed, 17 Jul 2024 16:33:28 +0000 (+0200) Subject: [3.13] gh-120678: Guard against stdin.fileno() being unavailable (GH-121924) (#121929) X-Git-Tag: v3.13.0b4~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=91e098f44dbb5b6533e5173ec9a819de4cae6660;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-120678: Guard against stdin.fileno() being unavailable (GH-121924) (#121929) gh-120678: Guard against stdin.fileno() being unavailable (GH-121924) (cherry picked from commit 19cbf8fd636192059550d0c908c3e29797feed1f) Co-authored-by: Ɓukasz Langa --- diff --git a/Lib/test/test_pyrepl/test_pyrepl.py b/Lib/test/test_pyrepl/test_pyrepl.py index 6451d6104b5d..e6fcb69571c3 100644 --- a/Lib/test/test_pyrepl/test_pyrepl.py +++ b/Lib/test/test_pyrepl/test_pyrepl.py @@ -491,15 +491,23 @@ class TestPyReplOutput(TestCase): def test_stdin_is_tty(self): # Used during test log analysis to figure out if a TTY was available. - if os.isatty(sys.stdin.fileno()): - return - self.skipTest("stdin is not a tty") + try: + if os.isatty(sys.stdin.fileno()): + return + except OSError as ose: + self.skipTest(f"stdin tty check failed: {ose}") + else: + self.skipTest("stdin is not a tty") def test_stdout_is_tty(self): # Used during test log analysis to figure out if a TTY was available. - if os.isatty(sys.stdout.fileno()): - return - self.skipTest("stdout is not a tty") + try: + if os.isatty(sys.stdout.fileno()): + return + except OSError as ose: + self.skipTest(f"stdout tty check failed: {ose}") + else: + self.skipTest("stdout is not a tty") def test_basic(self): reader = self.prepare_reader(code_to_events("1+1\n"))