def async_add_job(self, target, *args): """Add job from within the event loop.""" task = None if asyncio.iscoroutine(target): task = self.loop.create_task(target) elif util.is_callback(target): self.loop.call_soon(target, *args) elif util.iscoro(target): task = self.loop.create_task(target(*args)) else: task = self.loop.run_in_executor(None, target, *args) return task
def test_iscoro(): """Test iscoro.""" assert util.iscoro(async_function) is True assert util.iscoro(functools.partial(async_function)) is True assert util.iscoro(async_is_callback) is False assert util.iscoro(async_not_callback) is False