[issue14634] Mock cannot autospec functions with keyword-only arguments.
R. David Murray
report at bugs.python.org
Fri Apr 20 20:08:04 CEST 2012
New submission from R. David Murray <rdmurray at bitdance.com>:
The following code:
def foo(a, *, b=None):
pass
unittest.mock.create_autospec(foo)
fails with this traceback:
Traceback (most recent call last):
File "temp.py", line 6, in <module>
unittest.mock.create_autospec(foo)
File "/home/rdmurray/python/p33/Lib/unittest/mock.py", line 2026, in create_autospec
mock = _set_signature(mock, spec)
File "/home/rdmurray/python/p33/Lib/unittest/mock.py", line 162, in _set_signature
result = _getsignature(original, skipfirst, instance)
File "/home/rdmurray/python/p33/Lib/unittest/mock.py", line 81, in _getsignature
regargs, varargs, varkwargs, defaults = inspect.getargspec(func)
File "/home/rdmurray/python/p33/Lib/inspect.py", line 808, in getargspec
raise ValueError("Function has keyword-only arguments or annotations"
ValueError: Function has keyword-only arguments or annotations, use getfullargspec() API which can support them
----------
keywords: easy
messages: 158864
nosy: michael.foord, r.david.murray
priority: normal
severity: normal
status: open
title: Mock cannot autospec functions with keyword-only arguments.
type: enhancement
versions: Python 3.3
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue14634>
_______________________________________
More information about the Python-bugs-list
mailing list