diff --git a/pandas/tests/arrays/sparse/test_arithmetics.py b/pandas/tests/arrays/sparse/test_arithmetics.py index 013814681b5f6..86fbcb337b30e 100644 --- a/pandas/tests/arrays/sparse/test_arithmetics.py +++ b/pandas/tests/arrays/sparse/test_arithmetics.py @@ -124,8 +124,13 @@ def test_float_scalar( if not np_version_under1p20: if op in [operator.floordiv, ops.rfloordiv]: - mark = pytest.mark.xfail(strict=False, reason="GH#38172") - request.node.add_marker(mark) + if op is operator.floordiv and scalar != 0: + pass + elif op is ops.rfloordiv and scalar == 0: + pass + else: + mark = pytest.mark.xfail(reason="GH#38172") + request.node.add_marker(mark) values = self._base([np.nan, 1, 2, 0, np.nan, 0, 1, 2, 1, np.nan]) @@ -170,9 +175,10 @@ def test_float_same_index_with_nans( op = all_arithmetic_functions if not np_version_under1p20: - if op in [operator.floordiv, ops.rfloordiv]: - mark = pytest.mark.xfail(strict=False, reason="GH#38172") - request.node.add_marker(mark) + if op is ops.rfloordiv: + if not (mix and kind == "block"): + mark = pytest.mark.xfail(reason="GH#38172") + request.node.add_marker(mark) values = self._base([np.nan, 1, 2, 0, np.nan, 0, 1, 2, 1, np.nan]) rvalues = self._base([np.nan, 2, 3, 4, np.nan, 0, 1, 3, 2, np.nan])