From 06467d0f1fc548b216d53a8620c110427a24e83e Mon Sep 17 00:00:00 2001 From: patrick <61934744+phofl@users.noreply.github.com> Date: Sun, 11 Apr 2021 18:32:10 +0200 Subject: [PATCH 1/4] Skipt failing tests for numpy dev (#40877) * Skipt failing tests for numpy dev * Add missed test to skip * Change if condition (cherry picked from commit 895f0b4022562d33e485c5d4eab1014d18656e0c) --- .../tests/arrays/boolean/test_arithmetic.py | 5 ++++- pandas/tests/arrays/masked/test_arithmetic.py | 4 ++++ pandas/tests/extension/test_boolean.py | 22 +++++++++++++++++++ 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/pandas/tests/arrays/boolean/test_arithmetic.py b/pandas/tests/arrays/boolean/test_arithmetic.py index 01de64568a011..9b854a81f2def 100644 --- a/pandas/tests/arrays/boolean/test_arithmetic.py +++ b/pandas/tests/arrays/boolean/test_arithmetic.py @@ -66,7 +66,10 @@ def test_div(left_array, right_array): @pytest.mark.parametrize( "opname", [ - "floordiv", + pytest.param( + "floordiv", + marks=pytest.mark.xfail(reason="NumpyDev GH#40874", strict=False), + ), "mod", pytest.param( "pow", marks=pytest.mark.xfail(reason="TODO follow int8 behaviour? GH34686") diff --git a/pandas/tests/arrays/masked/test_arithmetic.py b/pandas/tests/arrays/masked/test_arithmetic.py index 148b7092abb56..622abcb7b9e0f 100644 --- a/pandas/tests/arrays/masked/test_arithmetic.py +++ b/pandas/tests/arrays/masked/test_arithmetic.py @@ -3,6 +3,8 @@ import numpy as np import pytest +from pandas.compat import is_numpy_dev + import pandas as pd import pandas._testing as tm from pandas.core.arrays import ExtensionArray @@ -49,6 +51,8 @@ def test_array_scalar_like_equivalence(data, all_arithmetic_operators): def test_array_NA(data, all_arithmetic_operators): if "truediv" in all_arithmetic_operators: pytest.skip("division with pd.NA raises") + if "floordiv" in all_arithmetic_operators and is_numpy_dev: + pytest.skip("NumpyDev behavior GH#40874") data, _ = data op = tm.get_op_from_name(all_arithmetic_operators) check_skip(data, all_arithmetic_operators) diff --git a/pandas/tests/extension/test_boolean.py b/pandas/tests/extension/test_boolean.py index 86a0bc9213256..aef1f54581ec3 100644 --- a/pandas/tests/extension/test_boolean.py +++ b/pandas/tests/extension/test_boolean.py @@ -16,6 +16,8 @@ import numpy as np import pytest +from pandas.compat import is_numpy_dev + import pandas as pd import pandas._testing as tm from pandas.core.arrays.boolean import BooleanDtype @@ -139,6 +141,26 @@ def _check_op(self, s, op, other, op_name, exc=NotImplementedError): with pytest.raises(exc): op(s, other) + def test_arith_series_with_scalar(self, data, all_arithmetic_operators): + if "floordiv" in all_arithmetic_operators and is_numpy_dev: + pytest.skip("NumpyDev behavior GH#40874") + super().test_arith_series_with_scalar(data, all_arithmetic_operators) + + def test_arith_frame_with_scalar(self, data, all_arithmetic_operators): + if "floordiv" in all_arithmetic_operators and is_numpy_dev: + pytest.skip("NumpyDev behavior GH#40874") + super().test_arith_frame_with_scalar(data, all_arithmetic_operators) + + def test_arith_series_with_array(self, data, all_arithmetic_operators): + if "floordiv" in all_arithmetic_operators and is_numpy_dev: + pytest.skip("NumpyDev behavior GH#40874") + super().test_arith_series_with_scalar(data, all_arithmetic_operators) + + def test_divmod_series_array(self, data, data_for_twos): + if is_numpy_dev: + pytest.skip("NumpyDev behavior GH#40874") + super().test_divmod_series_array(data, data_for_twos) + def _check_divmod_op(self, s, op, other, exc=None): # override to not raise an error super()._check_divmod_op(s, op, other, None) From 78ddf859bd3fdb1839f9277e080b0781145a0a97 Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 11 Apr 2021 18:41:55 +0200 Subject: [PATCH 2/4] Fix duplicate test and add is numpy dev --- pandas/compat/__init__.py | 6 ++++++ pandas/tests/extension/test_boolean.py | 5 ----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index 2ac9b9e2c875c..ab62abe3bfeff 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -12,6 +12,7 @@ import warnings from pandas._typing import F +from pandas.compat.numpy import is_numpy_dev PY38 = sys.version_info >= (3, 8) PY39 = sys.version_info >= (3, 9) @@ -118,3 +119,8 @@ def get_lzma_file(lzma): "might be required to solve this issue." ) return lzma.LZMAFile + + +__all__ = [ + "is_numpy_dev", +] diff --git a/pandas/tests/extension/test_boolean.py b/pandas/tests/extension/test_boolean.py index aef1f54581ec3..3db32a61ecfb2 100644 --- a/pandas/tests/extension/test_boolean.py +++ b/pandas/tests/extension/test_boolean.py @@ -146,11 +146,6 @@ def test_arith_series_with_scalar(self, data, all_arithmetic_operators): pytest.skip("NumpyDev behavior GH#40874") super().test_arith_series_with_scalar(data, all_arithmetic_operators) - def test_arith_frame_with_scalar(self, data, all_arithmetic_operators): - if "floordiv" in all_arithmetic_operators and is_numpy_dev: - pytest.skip("NumpyDev behavior GH#40874") - super().test_arith_frame_with_scalar(data, all_arithmetic_operators) - def test_arith_series_with_array(self, data, all_arithmetic_operators): if "floordiv" in all_arithmetic_operators and is_numpy_dev: pytest.skip("NumpyDev behavior GH#40874") From 1021669432c6ffe0958c4a4a8d1c24a3353717fa Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 11 Apr 2021 20:48:43 +0200 Subject: [PATCH 3/4] Revert code change --- pandas/compat/__init__.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py index ab62abe3bfeff..2ac9b9e2c875c 100644 --- a/pandas/compat/__init__.py +++ b/pandas/compat/__init__.py @@ -12,7 +12,6 @@ import warnings from pandas._typing import F -from pandas.compat.numpy import is_numpy_dev PY38 = sys.version_info >= (3, 8) PY39 = sys.version_info >= (3, 9) @@ -119,8 +118,3 @@ def get_lzma_file(lzma): "might be required to solve this issue." ) return lzma.LZMAFile - - -__all__ = [ - "is_numpy_dev", -] From 8428a741211865fb5a071d514574494d9aece916 Mon Sep 17 00:00:00 2001 From: phofl Date: Sun, 11 Apr 2021 20:49:40 +0200 Subject: [PATCH 4/4] Fix imports --- pandas/tests/arrays/masked/test_arithmetic.py | 2 +- pandas/tests/extension/test_boolean.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pandas/tests/arrays/masked/test_arithmetic.py b/pandas/tests/arrays/masked/test_arithmetic.py index 622abcb7b9e0f..34686f6052131 100644 --- a/pandas/tests/arrays/masked/test_arithmetic.py +++ b/pandas/tests/arrays/masked/test_arithmetic.py @@ -3,7 +3,7 @@ import numpy as np import pytest -from pandas.compat import is_numpy_dev +from pandas.compat.numpy import is_numpy_dev import pandas as pd import pandas._testing as tm diff --git a/pandas/tests/extension/test_boolean.py b/pandas/tests/extension/test_boolean.py index 3db32a61ecfb2..d15c822f22c14 100644 --- a/pandas/tests/extension/test_boolean.py +++ b/pandas/tests/extension/test_boolean.py @@ -16,7 +16,7 @@ import numpy as np import pytest -from pandas.compat import is_numpy_dev +from pandas.compat.numpy import is_numpy_dev import pandas as pd import pandas._testing as tm