From 021b27482e650641f9f65319371bfa24fa46b224 Mon Sep 17 00:00:00 2001 From: Yury Selivanov Date: Tue, 15 Apr 2014 12:01:44 -0400 Subject: asyncio.tasks: Make sure CoroWrapper.send proxies one argument correctly Issue #21209. --- Lib/test/test_asyncio/test_tasks.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'Lib/test/test_asyncio/test_tasks.py') diff --git a/Lib/test/test_asyncio/test_tasks.py b/Lib/test/test_asyncio/test_tasks.py index 45de8acc1a..2b90a108f7 100644 --- a/Lib/test/test_asyncio/test_tasks.py +++ b/Lib/test/test_asyncio/test_tasks.py @@ -1410,6 +1410,24 @@ class TaskTests(unittest.TestCase): finally: asyncio.tasks._DEBUG = old_debug + def test_yield_from_corowrapper_send(self): + def foo(): + a = yield + return a + + def call(arg): + cw = asyncio.tasks.CoroWrapper(foo(), foo) + cw.send(None) + try: + cw.send(arg) + except StopIteration as ex: + return ex.args[0] + else: + raise AssertionError('StopIteration was expected') + + self.assertEqual(call((1, 2)), (1, 2)) + self.assertEqual(call('spam'), 'spam') + class GatherTestsBase: -- cgit v1.2.1