summaryrefslogtreecommitdiff
path: root/numpy/testing/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/testing/utils.py')
-rw-r--r--numpy/testing/utils.py11
1 files changed, 3 insertions, 8 deletions
diff --git a/numpy/testing/utils.py b/numpy/testing/utils.py
index c7f4a0aa7..8789dd13c 100644
--- a/numpy/testing/utils.py
+++ b/numpy/testing/utils.py
@@ -1658,16 +1658,12 @@ class WarningManager(object):
@contextlib.contextmanager
def _assert_warns_context(warning_class, name=None):
__tracebackhide__ = True # Hide traceback for py.test
- with warnings.catch_warnings(record=True) as l:
- warnings.simplefilter('always')
+ with suppress_warnings() as sup:
+ l = sup.record(warning_class)
yield
if not len(l) > 0:
name_str = " when calling %s" % name if name is not None else ""
raise AssertionError("No warning raised" + name_str)
- if not l[0].category is warning_class:
- name_str = "%s " % name if name is not None else ""
- raise AssertionError("First warning %sis not a %s (is %s)"
- % (name_str, warning_class, l[0]))
def assert_warns(warning_class, *args, **kwargs):
@@ -1676,8 +1672,7 @@ def assert_warns(warning_class, *args, **kwargs):
A warning of class warning_class should be thrown by the callable when
invoked with arguments args and keyword arguments kwargs.
- If a different type of warning is thrown, it will not be caught, and the
- test case will be deemed to have suffered an error.
+ If a different type of warning is thrown, it will not be caught.
If called with all arguments other than the warning class omitted, may be
used as a context manager: