Skip to content

Commit 30c67a3

Browse files
mroeschketonyyuyiding
authored andcommitted
CI/TST: Fix xfail in test_columns_dtypes_not_invalid for pyarrow nightly (pandas-dev#61042)
1 parent 66623ec commit 30c67a3

File tree

2 files changed

+28
-18
lines changed

2 files changed

+28
-18
lines changed

pandas/compat/pyarrow.py

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
pa_version_under17p0 = _palv < Version("17.0.0")
2020
pa_version_under18p0 = _palv < Version("18.0.0")
2121
pa_version_under19p0 = _palv < Version("19.0.0")
22+
pa_version_under20p0 = _palv < Version("20.0.0")
2223
HAS_PYARROW = True
2324
except ImportError:
2425
pa_version_under10p1 = True
@@ -32,4 +33,5 @@
3233
pa_version_under17p0 = True
3334
pa_version_under18p0 = True
3435
pa_version_under19p0 = True
36+
pa_version_under20p0 = True
3537
HAS_PYARROW = False

pandas/tests/io/test_parquet.py

+26-18
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
pa_version_under15p0,
1919
pa_version_under17p0,
2020
pa_version_under19p0,
21+
pa_version_under20p0,
2122
)
2223

2324
import pandas as pd
@@ -1075,27 +1076,34 @@ def test_read_dtype_backend_pyarrow_config_index(self, pa):
10751076
expected=expected,
10761077
)
10771078

1078-
@pytest.mark.xfail(
1079-
pa_version_under17p0, reason="pa.pandas_compat passes 'datetime64' to .astype"
1079+
@pytest.mark.parametrize(
1080+
"columns",
1081+
[
1082+
[0, 1],
1083+
pytest.param(
1084+
[b"foo", b"bar"],
1085+
marks=pytest.mark.xfail(
1086+
pa_version_under20p0,
1087+
raises=NotImplementedError,
1088+
reason="https://github.com/apache/arrow/pull/44171",
1089+
),
1090+
),
1091+
pytest.param(
1092+
[
1093+
datetime.datetime(2011, 1, 1, 0, 0),
1094+
datetime.datetime(2011, 1, 1, 1, 1),
1095+
],
1096+
marks=pytest.mark.xfail(
1097+
pa_version_under17p0,
1098+
reason="pa.pandas_compat passes 'datetime64' to .astype",
1099+
),
1100+
),
1101+
],
10801102
)
1081-
def test_columns_dtypes_not_invalid(self, pa):
1103+
def test_columns_dtypes_not_invalid(self, pa, columns):
10821104
df = pd.DataFrame({"string": list("abc"), "int": list(range(1, 4))})
10831105

1084-
# numeric
1085-
df.columns = [0, 1]
1086-
check_round_trip(df, pa)
1087-
1088-
# bytes
1089-
df.columns = [b"foo", b"bar"]
1090-
with pytest.raises(NotImplementedError, match="|S3"):
1091-
# Bytes fails on read_parquet
1092-
check_round_trip(df, pa)
1093-
1094-
# python object
1095-
df.columns = [
1096-
datetime.datetime(2011, 1, 1, 0, 0),
1097-
datetime.datetime(2011, 1, 1, 1, 1),
1098-
]
1106+
df.columns = columns
10991107
check_round_trip(df, pa)
11001108

11011109
def test_empty_columns(self, pa):

0 commit comments

Comments
 (0)