[3.13] gh-128231: Use runcode() return value for failing early (GH-129488) (#130513)

gh-128231: Use `runcode()` return value for failing early (GH-129488)
(cherry picked from commit 7ed3dc6392)

Co-authored-by: Bartosz Sławecki <bartoszpiotrslawecki@gmail.com>
This commit is contained in:
Miss Islington (bot) 2025-03-28 12:11:45 +01:00 committed by GitHub
parent 2ccb84a871
commit 8f6a9aa6ae
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 40 additions and 3 deletions

View file

@ -294,7 +294,15 @@ class TestInteractiveModeSyntaxErrors(unittest.TestCase):
self.assertEqual(traceback_lines, expected_lines)
class TestAsyncioREPLContextVars(unittest.TestCase):
class TestAsyncioREPL(unittest.TestCase):
def test_multiple_statements_fail_early(self):
user_input = "1 / 0; print('afterwards')"
p = spawn_repl("-m", "asyncio")
p.stdin.write(user_input)
output = kill_python(p)
self.assertIn("ZeroDivisionError", output)
self.assertNotIn("afterwards", output)
def test_toplevel_contextvars_sync(self):
user_input = dedent("""\
from contextvars import ContextVar