From 43be6b747e0960e3bf41163cbccaabb48737143b Mon Sep 17 00:00:00 2001 From: Aniket Singh Yadav Date: Sun, 16 Nov 2025 21:36:34 +0530 Subject: [PATCH 1/2] EA attribute specifying whether copy=False is ignored --- pandas/tests/extension/base/missing.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pandas/tests/extension/base/missing.py b/pandas/tests/extension/base/missing.py index cee565d4f7c1e..3a149025421b2 100644 --- a/pandas/tests/extension/base/missing.py +++ b/pandas/tests/extension/base/missing.py @@ -6,6 +6,8 @@ class BaseMissingTests: + _supports_fillna_copy_false = True + def test_isna(self, data_missing): expected = np.array([True, False]) @@ -179,3 +181,9 @@ def test_fillna_fill_other(self, data): expected = pd.DataFrame({"A": data, "B": [0.0] * len(result)}) tm.assert_frame_equal(result, expected) + + def test_fillna_readonly(self, data_missing): + fill_value = data_missing[1] + result = data_missing.fillna(fill_value, copy=False) + expected = data_missing.fillna(fill_value, copy=True) + tm.assert_extension_array_equal(result, expected) From 251ff22a05eaf4b706095b9f2593d18dadf146d4 Mon Sep 17 00:00:00 2001 From: Aniket Singh Yadav Date: Tue, 18 Nov 2025 01:48:46 +0530 Subject: [PATCH 2/2] EA attribute specifying whether copy=False is ignored --- pandas/tests/extension/test_numpy.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pandas/tests/extension/test_numpy.py b/pandas/tests/extension/test_numpy.py index 691ce9341b788..e19d1d7471ea6 100644 --- a/pandas/tests/extension/test_numpy.py +++ b/pandas/tests/extension/test_numpy.py @@ -167,6 +167,8 @@ def skip_numpy_object(dtype, request): class TestNumpyExtensionArray(base.ExtensionTests): + _supports_fillna_copy_false = False + @pytest.mark.skip(reason="We don't register our dtype") # We don't want to register. This test should probably be split in two. def test_from_dtype(self, data):