summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2023-10-05 20:37:20 (GMT)
committerGitHub <noreply@github.com>2023-10-05 20:37:20 (GMT)
commit350d89b79588ebd140c3987cc05e3719ca17a973 (patch)
tree0680618fd6a2adb779c9f73503f7539db763fe54
parent93279cc8b88ea9964fc5f82e30e754ee223d6453 (diff)
downloadcpython-350d89b79588ebd140c3987cc05e3719ca17a973.zip
cpython-350d89b79588ebd140c3987cc05e3719ca17a973.tar.gz
cpython-350d89b79588ebd140c3987cc05e3719ca17a973.tar.bz2
[3.12] gh-110167: Increase support.LOOPBACK_TIMEOUT to 10 seconds (#110413) (#110427)
gh-110167: Increase support.LOOPBACK_TIMEOUT to 10 seconds (#110413) Increase support.LOOPBACK_TIMEOUT from 5 to 10 seconds. Also increase the timeout depending on the --timeout option. For example, for a test timeout of 40 minutes (ARM Raspbian 3.x), use LOOPBACK_TIMEOUT of 20 seconds instead of 5 seconds before. (cherry picked from commit 0db2f1475e6539e1954e1f8bd53e005c3ecd6a26)
-rw-r--r--Lib/test/libregrtest/setup.py17
-rw-r--r--Lib/test/support/__init__.py8
2 files changed, 11 insertions, 14 deletions
diff --git a/Lib/test/libregrtest/setup.py b/Lib/test/libregrtest/setup.py
index b76bece..ec02166 100644
--- a/Lib/test/libregrtest/setup.py
+++ b/Lib/test/libregrtest/setup.py
@@ -88,16 +88,19 @@ def setup_tests(ns):
setup_unraisable_hook()
setup_threading_excepthook()
- if ns.timeout is not None:
+ timeout = ns.timeout
+ if timeout is not None:
# For a slow buildbot worker, increase SHORT_TIMEOUT and LONG_TIMEOUT
- support.SHORT_TIMEOUT = max(support.SHORT_TIMEOUT, ns.timeout / 40)
- support.LONG_TIMEOUT = max(support.LONG_TIMEOUT, ns.timeout / 4)
+ support.LOOPBACK_TIMEOUT = max(support.LOOPBACK_TIMEOUT, timeout / 120)
+ # don't increase INTERNET_TIMEOUT
+ support.SHORT_TIMEOUT = max(support.SHORT_TIMEOUT, timeout / 40)
+ support.LONG_TIMEOUT = max(support.LONG_TIMEOUT, timeout / 4)
# If --timeout is short: reduce timeouts
- support.LOOPBACK_TIMEOUT = min(support.LOOPBACK_TIMEOUT, ns.timeout)
- support.INTERNET_TIMEOUT = min(support.INTERNET_TIMEOUT, ns.timeout)
- support.SHORT_TIMEOUT = min(support.SHORT_TIMEOUT, ns.timeout)
- support.LONG_TIMEOUT = min(support.LONG_TIMEOUT, ns.timeout)
+ support.LOOPBACK_TIMEOUT = min(support.LOOPBACK_TIMEOUT, timeout)
+ support.INTERNET_TIMEOUT = min(support.INTERNET_TIMEOUT, timeout)
+ support.SHORT_TIMEOUT = min(support.SHORT_TIMEOUT, timeout)
+ support.LONG_TIMEOUT = min(support.LONG_TIMEOUT, timeout)
if ns.xmlpath:
from test.support.testresult import RegressionTestResult
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
index 29ea944..fb69d9f 100644
--- a/Lib/test/support/__init__.py
+++ b/Lib/test/support/__init__.py
@@ -74,13 +74,7 @@ __all__ = [
#
# The timeout should be long enough for connect(), recv() and send() methods
# of socket.socket.
-LOOPBACK_TIMEOUT = 5.0
-if sys.platform == 'win32' and ' 32 bit (ARM)' in sys.version:
- # bpo-37553: test_socket.SendfileUsingSendTest is taking longer than 2
- # seconds on Windows ARM32 buildbot
- LOOPBACK_TIMEOUT = 10
-elif sys.platform == 'vxworks':
- LOOPBACK_TIMEOUT = 10
+LOOPBACK_TIMEOUT = 10.0
# Timeout in seconds for network requests going to the internet. The timeout is
# short enough to prevent a test to wait for too long if the internet request