From 73ae2023a76f199ff854f8da14bd9ff8e93ee7fd Mon Sep 17 00:00:00 2001 From: Sam Gross Date: Wed, 10 Jan 2024 13:18:38 -0500 Subject: gh-113753: Clear finalized bit when putting PyAsyncGenASend back into free list (#113754) --- Lib/test/test_asyncgen.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'Lib/test/test_asyncgen.py') diff --git a/Lib/test/test_asyncgen.py b/Lib/test/test_asyncgen.py index a49630112af..7fa0a85100a 100644 --- a/Lib/test/test_asyncgen.py +++ b/Lib/test/test_asyncgen.py @@ -1701,6 +1701,14 @@ class TestUnawaitedWarnings(unittest.TestCase): async def gen(): yield 1 + # gh-113753: asend objects allocated from a free-list should warn. + # Ensure there is a finalized 'asend' object ready to be reused. + try: + g = gen() + g.asend(None).send(None) + except StopIteration: + pass + msg = f"coroutine method 'asend' of '{gen.__qualname__}' was never awaited" with self.assertWarnsRegex(RuntimeWarning, msg): g = gen() -- cgit v1.2.3