Add documentation
This commit is contained in:
parent
aa6a67044f
commit
80d165475b
|
@ -100,6 +100,22 @@ def warns(expected_warning, *args, **kwargs):
|
||||||
|
|
||||||
>>> with warns(RuntimeWarning):
|
>>> with warns(RuntimeWarning):
|
||||||
... warnings.warn("my warning", RuntimeWarning)
|
... warnings.warn("my warning", RuntimeWarning)
|
||||||
|
|
||||||
|
In the context manager form you may use the keyword argument ``match`` to assert
|
||||||
|
that the exception matches a text or regex::
|
||||||
|
|
||||||
|
>>> with warns(UserWarning, match='must be 0 or None'):
|
||||||
|
... warnings.warn("value must be 0 or None", UserWarning)
|
||||||
|
|
||||||
|
>>> with warns(UserWarning, match=r'must be \d+$'):
|
||||||
|
... warnings.warn("value must be 42", UserWarning)
|
||||||
|
|
||||||
|
>>> with warns(UserWarning, match=r'must be \d+$'):
|
||||||
|
... warnings.warn("this is not here", UserWarning)
|
||||||
|
Traceback (most recent call last):
|
||||||
|
...
|
||||||
|
Failed: DID NOT WARN. No warnings of type ...UserWarning... was emitted...
|
||||||
|
|
||||||
"""
|
"""
|
||||||
match_expr = None
|
match_expr = None
|
||||||
if not args:
|
if not args:
|
||||||
|
|
|
@ -168,7 +168,20 @@ which works in a similar manner to :ref:`raises <assertraises>`::
|
||||||
with pytest.warns(UserWarning):
|
with pytest.warns(UserWarning):
|
||||||
warnings.warn("my warning", UserWarning)
|
warnings.warn("my warning", UserWarning)
|
||||||
|
|
||||||
The test will fail if the warning in question is not raised.
|
The test will fail if the warning in question is not raised. The keyword
|
||||||
|
argument ``match`` to assert that the exception matches a text or regex::
|
||||||
|
|
||||||
|
>>> with warns(UserWarning, match='must be 0 or None'):
|
||||||
|
... warnings.warn("value must be 0 or None", UserWarning)
|
||||||
|
|
||||||
|
>>> with warns(UserWarning, match=r'must be \d+$'):
|
||||||
|
... warnings.warn("value must be 42", UserWarning)
|
||||||
|
|
||||||
|
>>> with warns(UserWarning, match=r'must be \d+$'):
|
||||||
|
... warnings.warn("this is not here", UserWarning)
|
||||||
|
Traceback (most recent call last):
|
||||||
|
...
|
||||||
|
Failed: DID NOT WARN. No warnings of type ...UserWarning... was emitted...
|
||||||
|
|
||||||
You can also call ``pytest.warns`` on a function or code string::
|
You can also call ``pytest.warns`` on a function or code string::
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue