@asyncio.coroutine
def queue_put():
    loop.call_later(0.01, q.put_nowait, 1)
    queue_get_task = asyncio.Task(queue_get(), loop=loop)
    (yield from started.wait())
    self.assertFalse(finished)
    res = (yield from queue_get_task)
    self.assertTrue(finished)
    return res
@asyncio.coroutine
def queue_put():
    loop.call_later(0.01, q.put_nowait, 1)
    queue_get_task = asyncio.Task(queue_get(), loop=loop)
    (yield from started.wait())
    self.assertFalse(finished)
    res = (yield from queue_get_task)
    self.assertTrue(finished)
    return res