Skip to content

Commit 71a6797

Browse files
Backport PR #57892 on branch 2.2.x (CI: xfail Pyarrow slicing test) (#57898)
Backport PR #57892: CI: xfail Pyarrow slicing test Co-authored-by: Matthew Roeschke <[email protected]>
1 parent cd6eeae commit 71a6797

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

pandas/compat/__init__.py

+2
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
pa_version_under13p0,
3131
pa_version_under14p0,
3232
pa_version_under14p1,
33+
pa_version_under16p0,
3334
)
3435

3536
if TYPE_CHECKING:
@@ -186,6 +187,7 @@ def get_bz2_file() -> type[pandas.compat.compressors.BZ2File]:
186187
"pa_version_under13p0",
187188
"pa_version_under14p0",
188189
"pa_version_under14p1",
190+
"pa_version_under16p0",
189191
"IS64",
190192
"ISMUSL",
191193
"PY310",

pandas/compat/pyarrow.py

+2
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
pa_version_under14p0 = _palv < Version("14.0.0")
1616
pa_version_under14p1 = _palv < Version("14.0.1")
1717
pa_version_under15p0 = _palv < Version("15.0.0")
18+
pa_version_under16p0 = _palv < Version("16.0.0")
1819
except ImportError:
1920
pa_version_under10p1 = True
2021
pa_version_under11p0 = True
@@ -23,3 +24,4 @@
2324
pa_version_under14p0 = True
2425
pa_version_under14p1 = True
2526
pa_version_under15p0 = True
27+
pa_version_under16p0 = True

pandas/tests/indexes/object/test_indexing.py

+11-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
NA,
88
is_matching_na,
99
)
10+
from pandas.compat import pa_version_under16p0
1011
import pandas.util._test_decorators as td
1112

1213
import pandas as pd
@@ -200,7 +201,16 @@ class TestSliceLocs:
200201
(pd.IndexSlice["m":"m":-1], ""), # type: ignore[misc]
201202
],
202203
)
203-
def test_slice_locs_negative_step(self, in_slice, expected, dtype):
204+
def test_slice_locs_negative_step(self, in_slice, expected, dtype, request):
205+
if (
206+
not pa_version_under16p0
207+
and dtype == "string[pyarrow_numpy]"
208+
and in_slice == slice("a", "a", -1)
209+
):
210+
request.applymarker(
211+
pytest.mark.xfail(reason="https://github.com/apache/arrow/issues/40642")
212+
)
213+
204214
index = Index(list("bcdxy"), dtype=dtype)
205215

206216
s_start, s_stop = index.slice_locs(in_slice.start, in_slice.stop, in_slice.step)

0 commit comments

Comments
 (0)