Skip to content

Commit 1884b53

Browse files
committed
remove data_for_fillna and add series tests
1 parent dad9d27 commit 1884b53

File tree

7 files changed

+21
-36
lines changed

7 files changed

+21
-36
lines changed

pandas/tests/extension/base/methods.py

+21-2
Original file line numberDiff line numberDiff line change
@@ -105,13 +105,32 @@ def test_factorize_equivalence(self, data_for_grouping, na_sentinel):
105105
tm.assert_numpy_array_equal(l1, l2)
106106
self.assert_extension_array_equal(u1, u2)
107107

108-
def test_fillna_copy(self, data_for_fillna):
109-
df = pd.DataFrame({"A": data_for_fillna})
108+
def test_fillna_copy_frame(self, data):
109+
arr = data.take([1, 1])
110+
df = pd.DataFrame({"A": arr})
110111
filled_val = df.iloc[0, 0]
111112

112113
result = df.fillna(filled_val)
113114
assert df.values.base is not result.values.base
114115

116+
if isinstance(arr, pd.SparseArray):
117+
assert df.A._values.to_dense() is arr.to_dense()
118+
else:
119+
assert df.A._values is arr
120+
121+
def test_fillna_copy_series(self, data):
122+
arr = data.take([1, 1])
123+
ser = pd.Series(arr)
124+
filled_val = ser[0]
125+
126+
result = ser.fillna(filled_val)
127+
assert ser._values is not result._values
128+
129+
if isinstance(arr, pd.SparseArray):
130+
assert ser._values.to_dense() is arr.to_dense()
131+
else:
132+
assert ser._values is arr
133+
115134
def test_combine_le(self, data_repeated):
116135
# GH 20825
117136
# Test that combine works when doing a <= (le) comparison

pandas/tests/extension/decimal/test_decimal.py

-5
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,6 @@ def data_missing():
2727
return DecimalArray([decimal.Decimal('NaN'), decimal.Decimal(1)])
2828

2929

30-
@pytest.fixture
31-
def data_for_fillna():
32-
return DecimalArray([decimal.Decimal(1), decimal.Decimal(1)])
33-
34-
3530
@pytest.fixture
3631
def data_for_sorting():
3732
return DecimalArray([decimal.Decimal('1'),

pandas/tests/extension/json/test_json.py

-6
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,6 @@ def data_missing():
4141
return JSONArray([{}, {'a': 10}])
4242

4343

44-
@pytest.fixture
45-
def data_for_fillna():
46-
"""Length 2 array with [Valid, Valid]"""
47-
return JSONArray([{'a': 1}, {'a': 2}])
48-
49-
5044
@pytest.fixture
5145
def data_for_sorting():
5246
return JSONArray([{'b': 1}, {'c': 4}, {'a': 2, 'c': 3}])

pandas/tests/extension/test_categorical.py

-6
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,6 @@ def data_missing():
4646
return Categorical([np.nan, 'A'])
4747

4848

49-
@pytest.fixture
50-
def data_for_fillna():
51-
"""Length 2 array with [Valid, Valid]"""
52-
return Categorical(['A', 'A'])
53-
54-
5549
@pytest.fixture
5650
def data_for_sorting():
5751
return Categorical(['A', 'B', 'C'], categories=['C', 'A', 'B'],

pandas/tests/extension/test_integer.py

-5
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,6 @@ def data_missing(dtype):
4747
return integer_array([np.nan, 1], dtype=dtype)
4848

4949

50-
@pytest.fixture
51-
def data_for_fillna(dtype):
52-
return integer_array([1, 1], dtype=dtype)
53-
54-
5550
@pytest.fixture
5651
def data_for_sorting(dtype):
5752
return integer_array([1, 2, 0], dtype=dtype)

pandas/tests/extension/test_interval.py

-6
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,6 @@ def data_missing():
4747
return IntervalArray.from_tuples([None, (0, 1)])
4848

4949

50-
@pytest.fixture
51-
def data_for_fillna():
52-
"""Length 2 array with [Valid, Valid]"""
53-
return IntervalArray.from_tuples([(1, 1), (1, 2)])
54-
55-
5650
@pytest.fixture
5751
def data_for_sorting():
5852
return IntervalArray.from_tuples([(1, 2), (2, 3), (0, 1)])

pandas/tests/extension/test_sparse.py

-6
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,6 @@ def data_missing(request):
3737
return SparseArray([np.nan, 1], fill_value=request.param)
3838

3939

40-
@pytest.fixture(params=[0, np.nan])
41-
def data_for_fillna(request):
42-
"""Length 2 array with [Valid, Valid]"""
43-
return SparseArray([1, 1], fill_value=request.param)
44-
45-
4640
@pytest.fixture(params=[0, np.nan])
4741
def data_repeated(request):
4842
"""Return different versions of data for count times"""

0 commit comments

Comments
 (0)