Update pytest.raises to raise a TypeError when an invalid keyword argument is passed.

This commit is contained in:
Jeffrey Rackauckas
2018-03-27 19:57:15 -07:00
parent ff3d13ed0e
commit 34afded06d
3 changed files with 10 additions and 0 deletions

View File

@@ -597,6 +597,10 @@ def raises(expected_exception, *args, **kwargs):
message = kwargs.pop("message")
if "match" in kwargs:
match_expr = kwargs.pop("match")
if len(kwargs.keys()) > 0:
msg = 'Unexpected keyword arguments passed to pytest.raises: '
msg += ', '.join(kwargs.keys())
raise TypeError(msg)
return RaisesContext(expected_exception, message, match_expr)
elif isinstance(args[0], str):
code, = args