Skip to content

Commit f74b29f

Browse files
committed
TST: fixturize series/test_alter_axes.py
1 parent fa47b8d commit f74b29f

File tree

2 files changed

+69
-44
lines changed

2 files changed

+69
-44
lines changed

pandas/tests/series/conftest.py

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import pytest
2+
3+
import pandas.util.testing as tm
4+
5+
from pandas import Series
6+
7+
8+
@pytest.fixture
9+
def ts():
10+
ts = tm.makeTimeSeries()
11+
ts.name = 'ts'
12+
return ts
13+
14+
15+
@pytest.fixture
16+
def series():
17+
series = tm.makeStringSeries()
18+
series.name = 'series'
19+
return series
20+
21+
22+
@pytest.fixture
23+
def objSeries():
24+
objSeries = tm.makeObjectSeries()
25+
objSeries.name = 'objects'
26+
return objSeries
27+
28+
29+
@pytest.fixture
30+
def empty():
31+
return Series([], index=[])

pandas/tests/series/test_alter_axes.py

+38-44
Original file line numberDiff line numberDiff line change
@@ -6,44 +6,38 @@
66
from datetime import datetime
77

88
import numpy as np
9-
import pandas as pd
109

11-
from pandas import Index, Series
12-
from pandas.core.index import MultiIndex, RangeIndex
10+
from pandas import Series, DataFrame, Index, MultiIndex, RangeIndex
1311

1412
from pandas.compat import lrange, range, zip
15-
from pandas.util.testing import assert_series_equal, assert_frame_equal
1613
import pandas.util.testing as tm
1714

18-
from .common import TestData
1915

16+
class TestSeriesAlterAxes():
2017

21-
class TestSeriesAlterAxes(TestData):
22-
23-
def test_setindex(self):
18+
def test_setindex(self, series):
2419
# wrong type
25-
series = self.series.copy()
2620
pytest.raises(TypeError, setattr, series, 'index', None)
2721

2822
# wrong length
29-
series = self.series.copy()
3023
pytest.raises(Exception, setattr, series, 'index',
3124
np.arange(len(series) - 1))
3225

3326
# works
34-
series = self.series.copy()
3527
series.index = np.arange(len(series))
3628
assert isinstance(series.index, Index)
3729

38-
def test_rename(self):
30+
# Renaming
31+
32+
def test_rename(self, ts):
3933
renamer = lambda x: x.strftime('%Y%m%d')
40-
renamed = self.ts.rename(renamer)
41-
assert renamed.index[0] == renamer(self.ts.index[0])
34+
renamed = ts.rename(renamer)
35+
assert renamed.index[0] == renamer(ts.index[0])
4236

4337
# dict
44-
rename_dict = dict(zip(self.ts.index, renamed.index))
45-
renamed2 = self.ts.rename(rename_dict)
46-
assert_series_equal(renamed, renamed2)
38+
rename_dict = dict(zip(ts.index, renamed.index))
39+
renamed2 = ts.rename(rename_dict)
40+
tm.assert_series_equal(renamed, renamed2)
4741

4842
# partial dict
4943
s = Series(np.arange(4), index=['a', 'b', 'c', 'd'], dtype='int64')
@@ -105,12 +99,12 @@ def test_set_name(self):
10599
assert s.name is None
106100
assert s is not s2
107101

108-
def test_rename_inplace(self):
102+
def test_rename_inplace(self, ts):
109103
renamer = lambda x: x.strftime('%Y%m%d')
110-
expected = renamer(self.ts.index[0])
104+
expected = renamer(ts.index[0])
111105

112-
self.ts.rename(renamer, inplace=True)
113-
assert self.ts.index[0] == expected
106+
ts.rename(renamer, inplace=True)
107+
assert ts.index[0] == expected
114108

115109
def test_set_index_makes_timeseries(self):
116110
idx = tm.makeDateIndex(10)
@@ -135,7 +129,7 @@ def test_reset_index(self):
135129
s = ser.reset_index(drop=True)
136130
s2 = ser
137131
s2.reset_index(drop=True, inplace=True)
138-
assert_series_equal(s, s2)
132+
tm.assert_series_equal(s, s2)
139133

140134
# level
141135
index = MultiIndex(levels=[['bar'], ['one', 'two', 'three'], [0, 1]],
@@ -150,8 +144,8 @@ def test_reset_index(self):
150144
assert isinstance(rs, Series)
151145

152146
def test_reset_index_level(self):
153-
df = pd.DataFrame([[1, 2, 3], [4, 5, 6]],
154-
columns=['A', 'B', 'C'])
147+
df = DataFrame([[1, 2, 3], [4, 5, 6]],
148+
columns=['A', 'B', 'C'])
155149

156150
for levels in ['A', 'B'], [0, 1]:
157151
# With MultiIndex
@@ -189,19 +183,19 @@ def test_reset_index_level(self):
189183
s.reset_index(level=[0, 1, 2])
190184

191185
# Check that .reset_index([],drop=True) doesn't fail
192-
result = pd.Series(range(4)).reset_index([], drop=True)
193-
expected = pd.Series(range(4))
194-
assert_series_equal(result, expected)
186+
result = Series(range(4)).reset_index([], drop=True)
187+
expected = Series(range(4))
188+
tm.assert_series_equal(result, expected)
195189

196190
def test_reset_index_range(self):
197191
# GH 12071
198-
s = pd.Series(range(2), name='A', dtype='int64')
192+
s = Series(range(2), name='A', dtype='int64')
199193
series_result = s.reset_index()
200194
assert isinstance(series_result.index, RangeIndex)
201-
series_expected = pd.DataFrame([[0, 0], [1, 1]],
202-
columns=['index', 'A'],
203-
index=RangeIndex(stop=2))
204-
assert_frame_equal(series_result, series_expected)
195+
series_expected = DataFrame([[0, 0], [1, 1]],
196+
columns=['index', 'A'],
197+
index=RangeIndex(stop=2))
198+
tm.assert_frame_equal(series_result, series_expected)
205199

206200
def test_reorder_levels(self):
207201
index = MultiIndex(levels=[['bar'], ['one', 'two', 'three'], [0, 1]],
@@ -212,11 +206,11 @@ def test_reorder_levels(self):
212206

213207
# no change, position
214208
result = s.reorder_levels([0, 1, 2])
215-
assert_series_equal(s, result)
209+
tm.assert_series_equal(s, result)
216210

217211
# no change, labels
218212
result = s.reorder_levels(['L0', 'L1', 'L2'])
219-
assert_series_equal(s, result)
213+
tm.assert_series_equal(s, result)
220214

221215
# rotate, position
222216
result = s.reorder_levels([1, 2, 0])
@@ -225,17 +219,17 @@ def test_reorder_levels(self):
225219
[0, 0, 0, 0, 0, 0]],
226220
names=['L1', 'L2', 'L0'])
227221
expected = Series(np.arange(6), index=e_idx)
228-
assert_series_equal(result, expected)
222+
tm.assert_series_equal(result, expected)
229223

230-
def test_rename_axis_inplace(self):
224+
def test_rename_axis_inplace(self, ts):
231225
# GH 15704
232-
series = self.ts.copy()
226+
series = ts.copy()
233227
expected = series.rename_axis('foo')
234228
result = series.copy()
235229
no_return = result.rename_axis('foo', inplace=True)
236230

237231
assert no_return is None
238-
assert_series_equal(result, expected)
232+
tm.assert_series_equal(result, expected)
239233

240234
def test_set_axis_inplace_axes(self, axis_series):
241235
# GH14636
@@ -291,25 +285,25 @@ def test_reset_index_drop_errors(self):
291285
# GH 20925
292286

293287
# KeyError raised for series index when passed level name is missing
294-
s = pd.Series(range(4))
288+
s = Series(range(4))
295289
with tm.assert_raises_regex(KeyError, 'must be same as name'):
296290
s.reset_index('wrong', drop=True)
297291
with tm.assert_raises_regex(KeyError, 'must be same as name'):
298292
s.reset_index('wrong')
299293

300294
# KeyError raised for series when level to be dropped is missing
301-
s = pd.Series(range(4), index=pd.MultiIndex.from_product([[1, 2]] * 2))
295+
s = Series(range(4), index=MultiIndex.from_product([[1, 2]] * 2))
302296
with tm.assert_raises_regex(KeyError, 'not found'):
303297
s.reset_index('wrong', drop=True)
304298

305299
def test_droplevel(self):
306300
# GH20342
307-
ser = pd.Series([1, 2, 3, 4])
308-
ser.index = pd.MultiIndex.from_arrays([(1, 2, 3, 4), (5, 6, 7, 8)],
309-
names=['a', 'b'])
301+
ser = Series([1, 2, 3, 4])
302+
ser.index = MultiIndex.from_arrays([(1, 2, 3, 4), (5, 6, 7, 8)],
303+
names=['a', 'b'])
310304
expected = ser.reset_index('b', drop=True)
311305
result = ser.droplevel('b', axis='index')
312-
assert_series_equal(result, expected)
306+
tm.assert_series_equal(result, expected)
313307
# test that droplevel raises ValueError on axis != 0
314308
with pytest.raises(ValueError):
315309
ser.droplevel(1, axis='columns')

0 commit comments

Comments
 (0)