diff options
author | Frederick Lefebvre <fredlef@amazon.com> | 2018-03-14 03:33:05 +0000 |
---|---|---|
committer | fredlef <fredlef@amazon.com> | 2018-03-14 13:14:55 -0700 |
commit | 53b358ce7eddf78ac2bc22045fbe25e91e663b9a (patch) | |
tree | 37054f48b52d3725f7b1f6a840fd0f0d40ba2399 /numpy/testing | |
parent | a91f61a429e35a47f6faa025ceb862664dc12609 (diff) | |
download | numpy-53b358ce7eddf78ac2bc22045fbe25e91e663b9a.tar.gz |
TST: Import abstract classes from collections.abc
Abstract collection classes accessed from the collections module
have been deprecated since Python 3.3. They should be
accessed through collections.abc. When run with Python
3.7, the deprecation warning cause multiple tests to
fail.
Diffstat (limited to 'numpy/testing')
-rw-r--r-- | numpy/testing/nose_tools/decorators.py | 13 | ||||
-rw-r--r-- | numpy/testing/pytest_tools/decorators.py | 13 |
2 files changed, 18 insertions, 8 deletions
diff --git a/numpy/testing/nose_tools/decorators.py b/numpy/testing/nose_tools/decorators.py index dda2c1b74..dee832404 100644 --- a/numpy/testing/nose_tools/decorators.py +++ b/numpy/testing/nose_tools/decorators.py @@ -15,7 +15,12 @@ function name, setup and teardown functions and so on - see """ from __future__ import division, absolute_import, print_function -import collections +try: + # Accessing collections abstact classes from collections + # has been deprecated since Python 3.3 + import collections.abc as collections_abc +except ImportError: + import collections as collections_abc from .utils import SkipTest, assert_warns, HAS_REFCOUNT @@ -126,7 +131,7 @@ def skipif(skip_condition, msg=None): import nose # Allow for both boolean or callable skip conditions. - if isinstance(skip_condition, collections.Callable): + if isinstance(skip_condition, collections_abc.Callable): skip_val = lambda: skip_condition() else: skip_val = lambda: skip_condition @@ -202,7 +207,7 @@ def knownfailureif(fail_condition, msg=None): msg = 'Test skipped due to known failure' # Allow for both boolean or callable known failure conditions. - if isinstance(fail_condition, collections.Callable): + if isinstance(fail_condition, collections_abc.Callable): fail_val = lambda: fail_condition() else: fail_val = lambda: fail_condition @@ -257,7 +262,7 @@ def deprecated(conditional=True): with assert_warns(DeprecationWarning): f(*args, **kwargs) - if isinstance(conditional, collections.Callable): + if isinstance(conditional, collections_abc.Callable): cond = conditional() else: cond = conditional diff --git a/numpy/testing/pytest_tools/decorators.py b/numpy/testing/pytest_tools/decorators.py index bbca34035..f8addb9c8 100644 --- a/numpy/testing/pytest_tools/decorators.py +++ b/numpy/testing/pytest_tools/decorators.py @@ -12,7 +12,12 @@ function name, setup and teardown functions and so on. """ from __future__ import division, absolute_import, print_function -import collections +try: + # Accessing collections abstact classes from collections + # has been deprecated since Python 3.3 + import collections.abc as collections_abc +except ImportError: + import collections as collections_abc from .utils import SkipTest, assert_warns, HAS_REFCOUNT @@ -127,7 +132,7 @@ def skipif(skip_condition, msg=None): out = msg # Allow for both boolean or callable skip conditions. - if isinstance(skip_condition, collections.Callable): + if isinstance(skip_condition, collections_abc.Callable): skip_val = lambda: skip_condition() else: skip_val = lambda: skip_condition @@ -203,7 +208,7 @@ def knownfailureif(fail_condition, msg=None): msg = 'Test skipped due to known failure' # Allow for both boolean or callable known failure conditions. - if isinstance(fail_condition, collections.Callable): + if isinstance(fail_condition, collections_abc.Callable): fail_val = lambda: fail_condition() else: fail_val = lambda: fail_condition @@ -252,7 +257,7 @@ def deprecated(conditional=True): with assert_warns(DeprecationWarning): f(*args, **kwargs) - if isinstance(conditional, collections.Callable): + if isinstance(conditional, collections_abc.Callable): cond = conditional() else: cond = conditional |