mirror of
https://github.com/python/cpython.git
synced 2025-08-02 16:13:13 +00:00
[3.11] gh-109594: Fix concurrent.futures test_timeout() (GH-110018) (#110022)
gh-109594: Fix concurrent.futures test_timeout() (GH-110018)
Fix test_timeout() of test_concurrent_futures.test_wait. Remove the
future which may or may not complete depending if it takes longer
than the timeout ot not. Keep the second future which does not
complete before wait(). Make also the test faster: 0.5 second instead
of 6 seconds, so remove @support.requires_resource('walltime')
decorator.
(cherry picked from commit 9be283e5e1
)
Co-authored-by: Victor Stinner <vstinner@python.org>
This commit is contained in:
parent
82dea84dc4
commit
ff3cadd2a1
2 changed files with 13 additions and 7 deletions
|
@ -111,22 +111,24 @@ class WaitTests:
|
|||
self.assertEqual(set(), pending)
|
||||
|
||||
def test_timeout(self):
|
||||
future1 = self.executor.submit(mul, 6, 7)
|
||||
future2 = self.executor.submit(time.sleep, 6)
|
||||
short_timeout = 0.050
|
||||
long_timeout = short_timeout * 10
|
||||
|
||||
future = self.executor.submit(time.sleep, long_timeout)
|
||||
|
||||
finished, pending = futures.wait(
|
||||
[CANCELLED_AND_NOTIFIED_FUTURE,
|
||||
EXCEPTION_FUTURE,
|
||||
SUCCESSFUL_FUTURE,
|
||||
future1, future2],
|
||||
timeout=5,
|
||||
future],
|
||||
timeout=short_timeout,
|
||||
return_when=futures.ALL_COMPLETED)
|
||||
|
||||
self.assertEqual(set([CANCELLED_AND_NOTIFIED_FUTURE,
|
||||
EXCEPTION_FUTURE,
|
||||
SUCCESSFUL_FUTURE,
|
||||
future1]), finished)
|
||||
self.assertEqual(set([future2]), pending)
|
||||
SUCCESSFUL_FUTURE]),
|
||||
finished)
|
||||
self.assertEqual(set([future]), pending)
|
||||
|
||||
|
||||
class ThreadPoolWaitTests(ThreadPoolMixin, WaitTests, BaseTestCase):
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
Fix test_timeout() of test_concurrent_futures.test_wait. Remove the future
|
||||
which may or may not complete depending if it takes longer than the timeout
|
||||
ot not. Keep the second future which does not complete before wait()
|
||||
timeout. Patch by Victor Stinner.
|
Loading…
Add table
Add a link
Reference in a new issue