diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2022-06-30 18:04:42 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-30 18:04:42 (GMT) |
commit | 9ebec7d46cd52fff68507c291fde34fc865acfc4 (patch) | |
tree | 2ae4a1829964965e19ae968ccee8bacd92e36d60 /Lib/inspect.py | |
parent | 7fe949e5eac3efa8bb0cd9e7274380a044a408ea (diff) | |
download | cpython-9ebec7d46cd52fff68507c291fde34fc865acfc4.zip cpython-9ebec7d46cd52fff68507c291fde34fc865acfc4.tar.gz cpython-9ebec7d46cd52fff68507c291fde34fc865acfc4.tar.bz2 |
gh-84753: Make inspect.iscoroutinefunction() work with AsyncMock (GH-94050) (GH-94460)
The inspect version was not working with unittest.mock.AsyncMock.
The fix introduces special-casing of AsyncMock in
`inspect.iscoroutinefunction` equivalent to the one
performed in `asyncio.iscoroutinefunction`.
Co-authored-by: Ćukasz Langa <lukasz@langa.pl>
(cherry picked from commit 4261b6bffc0b8bb5c6d4d80578a81b7520f4aefc)
Co-authored-by: Mehdi ABAAKOUK <sileht@sileht.net>
Diffstat (limited to 'Lib/inspect.py')
-rw-r--r-- | Lib/inspect.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Lib/inspect.py b/Lib/inspect.py index 6e74471..cbc0632 100644 --- a/Lib/inspect.py +++ b/Lib/inspect.py @@ -395,7 +395,7 @@ def _has_code_flag(f, flag): while ismethod(f): f = f.__func__ f = functools._unwrap_partial(f) - if not isfunction(f): + if not (isfunction(f) or _signature_is_functionlike(f)): return False return bool(f.__code__.co_flags & flag) |