From 51aae8e4b53eb3c282728eebcfd9a6e87bd8836c Mon Sep 17 00:00:00 2001 From: Khor Chean Wei Date: Sat, 26 Feb 2022 13:47:41 +0800 Subject: [PATCH 1/3] Update test_fillna.py --- pandas/tests/series/methods/test_fillna.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/pandas/tests/series/methods/test_fillna.py b/pandas/tests/series/methods/test_fillna.py index 71a1b01eb9157..ab773c4fb3457 100644 --- a/pandas/tests/series/methods/test_fillna.py +++ b/pandas/tests/series/methods/test_fillna.py @@ -851,6 +851,24 @@ def test_fillna_pos_args_deprecation(self): expected = Series([1, 2, 3, 0], dtype=float) tm.assert_series_equal(result, expected) + @pytest.mark.parametrize( + "input, input_fillna, expected_data, expected_categories", + [ + (["A", "B", None, "A"], "B", ["A", "B", "B", "A"], ["A", "B"]), + (["A", "B", np.nan, "A"], "B", ["A", "B", "B", "A"], ["A", "B"]), + ], + ) + def test_fillna_categorical( + self, input, input_fillna, expected_data, expected_categories + ): + # GH32414 + cat = Categorical(input) + ser = Series(cat).fillna(input_fillna) + filled = cat.fillna(ser) + result = cat.fillna(filled) + expected = Categorical(expected_data, categories=expected_categories) + tm.assert_almost_equal(result, expected) + class TestFillnaPad: def test_fillna_bug(self): From 223e22c438906793acda39015e6ea455406664f5 Mon Sep 17 00:00:00 2001 From: "chean.wei.khor" Date: Sat, 26 Feb 2022 15:13:07 +0800 Subject: [PATCH 2/3] change test function name --- pandas/tests/series/methods/test_fillna.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/tests/series/methods/test_fillna.py b/pandas/tests/series/methods/test_fillna.py index ab773c4fb3457..f8ee6aa253e18 100644 --- a/pandas/tests/series/methods/test_fillna.py +++ b/pandas/tests/series/methods/test_fillna.py @@ -858,7 +858,7 @@ def test_fillna_pos_args_deprecation(self): (["A", "B", np.nan, "A"], "B", ["A", "B", "B", "A"], ["A", "B"]), ], ) - def test_fillna_categorical( + def test_fillna_categorical_accept_same_type( self, input, input_fillna, expected_data, expected_categories ): # GH32414 From 7f29fa4ddfe94a73e2e78332a06812b15f63bc57 Mon Sep 17 00:00:00 2001 From: "chean.wei.khor" Date: Sun, 27 Feb 2022 13:53:22 +0800 Subject: [PATCH 3/3] change assert categorical equal --- pandas/tests/series/methods/test_fillna.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/tests/series/methods/test_fillna.py b/pandas/tests/series/methods/test_fillna.py index f8ee6aa253e18..a30fb13dbb966 100644 --- a/pandas/tests/series/methods/test_fillna.py +++ b/pandas/tests/series/methods/test_fillna.py @@ -867,7 +867,7 @@ def test_fillna_categorical_accept_same_type( filled = cat.fillna(ser) result = cat.fillna(filled) expected = Categorical(expected_data, categories=expected_categories) - tm.assert_almost_equal(result, expected) + tm.assert_categorical_equal(result, expected) class TestFillnaPad: