New submission from R. David Murray <rdmur...@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 <rep...@bugs.python.org> <http://bugs.python.org/issue14634> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com