https://github.com/python/cpython/commit/a09e215abf3c80a3c99c86b4482b512b42aad072
commit: a09e215abf3c80a3c99c86b4482b512b42aad072
branch: main
author: Sam Gross <[email protected]>
committer: pablogsal <[email protected]>
date: 2024-07-20T16:04:14+02:00
summary:
gh-121988: Fix test hang when pyrepl is not available (#121990)
Also explicitly fail the test if we timeout while waiting for output so
that this failure mode is caught earlier.
files:
M Lib/test/test_pyrepl/test_pyrepl.py
diff --git a/Lib/test/test_pyrepl/test_pyrepl.py
b/Lib/test/test_pyrepl/test_pyrepl.py
index e6fcb69571c324..e3feeeb76f11d6 100644
--- a/Lib/test/test_pyrepl/test_pyrepl.py
+++ b/Lib/test/test_pyrepl/test_pyrepl.py
@@ -964,7 +964,7 @@ def _run_repl_globals_test(self, expectations, *,
as_file=False, as_module=False
mod.write_text("FOO = 42", encoding="utf-8")
commands = [
"print(f'{" + var + "=}')" for var in expectations
- ] + ["exit"]
+ ] + ["exit()"]
if as_file and as_module:
self.fail("as_file and as_module are mutually exclusive")
elif as_file:
@@ -1115,6 +1115,10 @@ def run_repl(
except OSError:
break
output.append(data)
+ else:
+ os.close(master_fd)
+ process.kill()
+ self.fail(f"Timeout while waiting for output, got:
{''.join(output)}")
os.close(master_fd)
try:
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]