summaryrefslogtreecommitdiff
path: root/Lib/test/test_asyncio/test_tasks.py
diff options
context:
space:
mode:
authorYury Selivanov <yselivanov@sprymix.com>2014-04-15 12:01:44 -0400
committerYury Selivanov <yselivanov@sprymix.com>2014-04-15 12:01:44 -0400
commit021b27482e650641f9f65319371bfa24fa46b224 (patch)
treeb95b0a043c6d9d405c27835fdda234394b1bafd2 /Lib/test/test_asyncio/test_tasks.py
parentddbd2ee6e5c3e50ba0b2d581ac10e9c4fdf19b14 (diff)
downloadcpython-git-021b27482e650641f9f65319371bfa24fa46b224.tar.gz
asyncio.tasks: Make sure CoroWrapper.send proxies one argument correctly
Issue #21209.
Diffstat (limited to 'Lib/test/test_asyncio/test_tasks.py')
-rw-r--r--Lib/test/test_asyncio/test_tasks.py18
1 files changed, 18 insertions, 0 deletions
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: