Skip to content

Commit 118d621

Browse files
simonjayhawkinsjreback
authored andcommitted
TST/CLN: reuse float_frame fixture in tests\reshape\test_concat.py (#26763)
1 parent d47fc0c commit 118d621

File tree

1 file changed

+31
-36
lines changed

1 file changed

+31
-36
lines changed

pandas/tests/reshape/test_concat.py

+31-36
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,7 @@ def sort_with_none(request):
3939
return request.param
4040

4141

42-
class ConcatenateBase:
43-
44-
def setup_method(self, method):
45-
self.frame = DataFrame(tm.getSeriesData())
46-
self.mixed_frame = self.frame.copy()
47-
self.mixed_frame['foo'] = 'bar'
48-
49-
50-
class TestConcatAppendCommon(ConcatenateBase):
42+
class TestConcatAppendCommon:
5143

5244
"""
5345
Test common dtype coercion rules between concat and append.
@@ -731,17 +723,20 @@ def test_concat_categorical_empty(self):
731723
tm.assert_series_equal(s2.append(s1, ignore_index=True), exp)
732724

733725

734-
class TestAppend(ConcatenateBase):
726+
class TestAppend:
727+
728+
def test_append(self, sort, float_frame):
729+
mixed_frame = float_frame.copy()
730+
mixed_frame['foo'] = 'bar'
735731

736-
def test_append(self, sort):
737-
begin_index = self.frame.index[:5]
738-
end_index = self.frame.index[5:]
732+
begin_index = float_frame.index[:5]
733+
end_index = float_frame.index[5:]
739734

740-
begin_frame = self.frame.reindex(begin_index)
741-
end_frame = self.frame.reindex(end_index)
735+
begin_frame = float_frame.reindex(begin_index)
736+
end_frame = float_frame.reindex(end_index)
742737

743738
appended = begin_frame.append(end_frame)
744-
tm.assert_almost_equal(appended['A'], self.frame['A'])
739+
tm.assert_almost_equal(appended['A'], float_frame['A'])
745740

746741
del end_frame['A']
747742
partial_appended = begin_frame.append(end_frame, sort=sort)
@@ -751,35 +746,35 @@ def test_append(self, sort):
751746
assert 'A' in partial_appended
752747

753748
# mixed type handling
754-
appended = self.mixed_frame[:5].append(self.mixed_frame[5:])
755-
tm.assert_frame_equal(appended, self.mixed_frame)
749+
appended = mixed_frame[:5].append(mixed_frame[5:])
750+
tm.assert_frame_equal(appended, mixed_frame)
756751

757752
# what to test here
758-
mixed_appended = self.mixed_frame[:5].append(self.frame[5:], sort=sort)
759-
mixed_appended2 = self.frame[:5].append(self.mixed_frame[5:],
760-
sort=sort)
753+
mixed_appended = mixed_frame[:5].append(float_frame[5:], sort=sort)
754+
mixed_appended2 = float_frame[:5].append(mixed_frame[5:], sort=sort)
761755

762756
# all equal except 'foo' column
763757
tm.assert_frame_equal(
764758
mixed_appended.reindex(columns=['A', 'B', 'C', 'D']),
765759
mixed_appended2.reindex(columns=['A', 'B', 'C', 'D']))
766760

767-
# append empty
761+
def test_append_empty(self, float_frame):
768762
empty = DataFrame()
769763

770-
appended = self.frame.append(empty)
771-
tm.assert_frame_equal(self.frame, appended)
772-
assert appended is not self.frame
764+
appended = float_frame.append(empty)
765+
tm.assert_frame_equal(float_frame, appended)
766+
assert appended is not float_frame
773767

774-
appended = empty.append(self.frame)
775-
tm.assert_frame_equal(self.frame, appended)
776-
assert appended is not self.frame
768+
appended = empty.append(float_frame)
769+
tm.assert_frame_equal(float_frame, appended)
770+
assert appended is not float_frame
777771

778-
# Overlap
772+
def test_append_overlap_raises(self, float_frame):
779773
msg = "Indexes have overlapping values"
780774
with pytest.raises(ValueError, match=msg):
781-
self.frame.append(self.frame, verify_integrity=True)
775+
float_frame.append(float_frame, verify_integrity=True)
782776

777+
def test_append_new_columns(self):
783778
# see gh-6129: new columns
784779
df = DataFrame({'a': {'x': 1, 'y': 2}, 'b': {'x': 3, 'y': 4}})
785780
row = Series([5, 6, 7], index=['a', 'b', 'c'], name='z')
@@ -851,17 +846,17 @@ def test_append_different_columns(self, sort):
851846
assert isna(appended['strings'][0:4]).all()
852847
assert isna(appended['bools'][5:]).all()
853848

854-
def test_append_many(self, sort):
855-
chunks = [self.frame[:5], self.frame[5:10],
856-
self.frame[10:15], self.frame[15:]]
849+
def test_append_many(self, sort, float_frame):
850+
chunks = [float_frame[:5], float_frame[5:10],
851+
float_frame[10:15], float_frame[15:]]
857852

858853
result = chunks[0].append(chunks[1:])
859-
tm.assert_frame_equal(result, self.frame)
854+
tm.assert_frame_equal(result, float_frame)
860855

861856
chunks[-1] = chunks[-1].copy()
862857
chunks[-1]['foo'] = 'bar'
863858
result = chunks[0].append(chunks[1:], sort=sort)
864-
tm.assert_frame_equal(result.loc[:, self.frame.columns], self.frame)
859+
tm.assert_frame_equal(result.loc[:, float_frame.columns], float_frame)
865860
assert (result['foo'][15:] == 'bar').all()
866861
assert result['foo'][:15].isna().all()
867862

@@ -1042,7 +1037,7 @@ def test_append_empty_frame_to_series_with_dateutil_tz(self):
10421037
assert_frame_equal(result, expected)
10431038

10441039

1045-
class TestConcatenate(ConcatenateBase):
1040+
class TestConcatenate:
10461041

10471042
def test_concat_copy(self):
10481043
df = DataFrame(np.random.randn(4, 3))

0 commit comments

Comments
 (0)