@skipBefore35
@gen_test
- def test_async_await_mixed_multi(self):
+ def test_async_await_mixed_multi_native_future(self):
namespace = exec_test(globals(), locals(), """
async def f1():
await gen.Task(self.io_loop.add_callback)
self.assertEqual(results, [42, 43])
self.finished = True
+ @skipBefore35
+ @gen_test
+ def test_async_await_mixed_multi_native_yieldpoint(self):
+ namespace = exec_test(globals(), locals(), """
+ async def f1():
+ await gen.Task(self.io_loop.add_callback)
+ return 42
+ """)
+
+ @gen.coroutine
+ def f2():
+ yield gen.Task(self.io_loop.add_callback)
+ raise gen.Return(43)
+
+ f2(callback=(yield gen.Callback('cb')))
+ results = yield [namespace['f1'](), gen.Wait('cb')]
+ self.assertEqual(results, [42, 43])
+ self.finished = True
+
@gen_test
def test_sync_return_no_value(self):
@gen.coroutine
self.finish('ok')
+# "Undecorated" here refers to the absence of @asynchronous.
class UndecoratedCoroutinesHandler(RequestHandler):
@gen.coroutine
def prepare(self):