human
I wrote the below code

    if (timeout is None):
        timeout = get_async_test_timeout()
    def wrap(f):
        f = gen.coroutine(f)
        @functools.wraps(f)
        def wrapper(self):
            return self.io_loop.run_sync(functools.partial(f, self), timeout=timeout)
        return wrapper
    if (func is not None):
        return wrap(func)
    else:
        return wrap

What's a good function header?

=====
Here's a good function header?
assistant
#Here's a good function header.

def gen_test(func=None, timeout=None):