mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
bpo-42392: Improve removal of *loop* parameter in asyncio primitives (GH-23499)
* Update code after merge review from 1st1 * Use a sentinel approach for loop parameter Remove unnecessary _get_running_loop patching * Use more clear function name (_verify_parameter_is_marker -> _verify_no_loop) * Add init method to _LoopBoundMixin to check that loop param wasn't used
This commit is contained in:
parent
7301979b23
commit
b9127dd6ee
5 changed files with 46 additions and 35 deletions
|
@ -51,6 +51,23 @@ class LockTests(test_utils.TestCase):
|
|||
|
||||
self.assertFalse(lock.locked())
|
||||
|
||||
def test_lock_doesnt_accept_loop_parameter(self):
|
||||
primitives_cls = [
|
||||
asyncio.Lock,
|
||||
asyncio.Condition,
|
||||
asyncio.Event,
|
||||
asyncio.Semaphore,
|
||||
asyncio.BoundedSemaphore,
|
||||
]
|
||||
|
||||
for cls in primitives_cls:
|
||||
with self.assertRaisesRegex(
|
||||
TypeError,
|
||||
rf'As of 3.10, the \*loop\* parameter was removed from '
|
||||
rf'{cls.__name__}\(\) since it is no longer necessary'
|
||||
):
|
||||
cls(loop=self.loop)
|
||||
|
||||
def test_lock_by_with_statement(self):
|
||||
loop = asyncio.new_event_loop() # don't use TestLoop quirks
|
||||
self.set_event_loop(loop)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue