]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-135329: Use longer timeout in pyrepl test_repl_eio() (#139503)
authorVictor Stinner <vstinner@python.org>
Thu, 2 Oct 2025 14:44:02 +0000 (16:44 +0200)
committerGitHub <noreply@github.com>
Thu, 2 Oct 2025 14:44:02 +0000 (16:44 +0200)
Replace hardcoded 5 seconds with support.SHORT_TIMEOUT.

Fix the following error on slow CI such as GitHub Action UBSan:

test test_pyrepl failed -- Traceback (most recent call last):
  File "Lib/test/test_pyrepl/test_unix_console.py", line 362, in test_repl_eio
    _, err = proc.communicate(timeout=5)  # sleep for pty to settle
             ~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "Lib/subprocess.py", line 1219, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
                     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "Lib/subprocess.py", line 2126, in _communicate
    self._check_timeout(endtime, orig_timeout, stdout, stderr)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "Lib/subprocess.py", line 1266, in _check_timeout
    raise TimeoutExpired(
    ...<2 lines>...
            stderr=b''.join(stderr_seq) if stderr_seq else None)
subprocess.TimeoutExpired: Command '[...]' timed out after 5 seconds

Lib/test/test_pyrepl/test_unix_console.py

index 3b0d2637dab9cb5e69da0a6dc091168594212e0f..6e422806cec47ec8e0a08b4a28fe0949da5f6cf3 100644 (file)
@@ -6,6 +6,7 @@ import subprocess
 import sys
 import unittest
 from functools import partial
+from test import support
 from test.support import os_helper, force_not_colorized_test_class
 from test.support import script_helper
 
@@ -359,7 +360,8 @@ class TestUnixConsoleEIOHandling(TestCase):
             self.fail("Child process failed to start properly")
 
         os.kill(proc.pid, signal.SIGUSR1)
-        _, err = proc.communicate(timeout=5)  # sleep for pty to settle
+        # sleep for pty to settle
+        _, err = proc.communicate(timeout=support.SHORT_TIMEOUT)
         self.assertEqual(
             proc.returncode,
             1,