summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_asyncio/test_tasks.py
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>2022-02-28 23:15:56 (GMT)
committerGitHub <noreply@github.com>2022-02-28 23:15:56 (GMT)
commit7d611b4cabaf7925f5f94daddf711d54aeae2cf9 (patch)
tree4c8a48847d780e1a2632a15d8ae2b551bc224ad8 /Lib/test/test_asyncio/test_tasks.py
parent08deed1af56bec8668c6cb4d5cfd89e393e1fe5e (diff)
downloadcpython-7d611b4cabaf7925f5f94daddf711d54aeae2cf9.zip
cpython-7d611b4cabaf7925f5f94daddf711d54aeae2cf9.tar.gz
cpython-7d611b4cabaf7925f5f94daddf711d54aeae2cf9.tar.bz2
bpo-46771: Remove two controversial lines from Task.cancel() (GH-31623)
Also from the _asyncio C accelerator module, and adjust one test that the change caused to fail. For more discussion see the discussion starting here: https://github.com/python/cpython/pull/31394#issuecomment-1053545331 (Basically, @asvetlov proposed to return False from cancel() when there is already a pending cancellation, and I went along, even though it wasn't necessary for the task group implementation, and @agronholm has come up with a counterexample that fails because of this change. So now I'm changing it back to the old semantics (but still bumping the counter) until we can have a proper discussion about this.)
Diffstat (limited to 'Lib/test/test_asyncio/test_tasks.py')
-rw-r--r--Lib/test/test_asyncio/test_tasks.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/Lib/test/test_asyncio/test_tasks.py b/Lib/test/test_asyncio/test_tasks.py
index b30f8f5..9508792 100644
--- a/Lib/test/test_asyncio/test_tasks.py
+++ b/Lib/test/test_asyncio/test_tasks.py
@@ -514,7 +514,11 @@ class BaseTaskTests:
self.assertTrue(t.cancel())
self.assertTrue(t.cancelling())
self.assertIn(" cancelling ", repr(t))
- self.assertFalse(t.cancel())
+
+ # Since we commented out two lines from Task.cancel(),
+ # this t.cancel() call now returns True.
+ # self.assertFalse(t.cancel())
+ self.assertTrue(t.cancel())
with self.assertRaises(asyncio.CancelledError):
loop.run_until_complete(t)