Skip to content

Commit 407fd14

Browse files
authored
TST: GH23452 test reorder_categories() on categorical index (#36648)
1 parent d385044 commit 407fd14

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

pandas/tests/indexing/test_categorical.py

+28
Original file line numberDiff line numberDiff line change
@@ -807,3 +807,31 @@ def test_loc_with_non_string_categories(self, idx_values, ordered):
807807
result.loc[sl, "A"] = ["qux", "qux2"]
808808
expected = DataFrame({"A": ["qux", "qux2", "baz"]}, index=cat_idx)
809809
tm.assert_frame_equal(result, expected)
810+
811+
@pytest.mark.parametrize(
812+
"categories",
813+
[
814+
pytest.param(["a", "b", "c"], id="str"),
815+
pytest.param(
816+
[pd.Interval(0, 1), pd.Interval(1, 2), pd.Interval(2, 3)],
817+
id="pd.Interval",
818+
),
819+
],
820+
)
821+
def test_reorder_index_with_categories(self, categories):
822+
# GH23452
823+
df = DataFrame(
824+
{"foo": range(len(categories))},
825+
index=CategoricalIndex(
826+
data=categories, categories=categories, ordered=True
827+
),
828+
)
829+
df.index = df.index.reorder_categories(df.index.categories[::-1])
830+
result = df.sort_index()
831+
expected = DataFrame(
832+
{"foo": reversed(range(len(categories)))},
833+
index=CategoricalIndex(
834+
data=categories[::-1], categories=categories[::-1], ordered=True
835+
),
836+
)
837+
tm.assert_frame_equal(result, expected)

0 commit comments

Comments
 (0)