Skip to content

Commit 12d511f

Browse files
committed
TST: test coverage enhancements
1 parent 3b8a192 commit 12d511f

File tree

7 files changed

+36
-11
lines changed

7 files changed

+36
-11
lines changed

pandas/core/generic.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ def _get_item_cache(self, item):
292292
res = self._box_item_values(item, values)
293293
cache[item] = res
294294
return res
295-
except Exception:
295+
except Exception: # pragma: no cover
296296
from pandas.core.frame import DataFrame
297297
if isinstance(item, DataFrame):
298298
raise ValueError('Cannot index using (boolean) dataframe')

pandas/core/panel.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -332,15 +332,11 @@ def _getitem_multilevel(self, key):
332332
if isinstance(loc, (slice, np.ndarray)):
333333
new_index = self.items[loc]
334334
result_index = _maybe_droplevels(new_index, key)
335-
if self._is_mixed_type:
336-
result = self.reindex(items=new_index)
337-
result.index = result_index
338-
else:
339-
new_values = self.values[loc, :, :]
340-
result = Panel(new_values,
341-
items=result_index,
342-
major_axis=self.major_axis,
343-
minor_axis=self.minor_axis)
335+
new_values = self.values[loc, :, :]
336+
result = Panel(new_values,
337+
items=result_index,
338+
major_axis=self.major_axis,
339+
minor_axis=self.minor_axis)
344340
return result
345341
else:
346342
return self._get_item_cache(key)

pandas/tests/test_frame.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3426,6 +3426,10 @@ def test_align(self):
34263426
method=None, fill_value=None)
34273427
self.assert_(bf.index.equals(Index([])))
34283428

3429+
af, bf = self.frame.align(other.ix[:,0], join='inner', axis=1,
3430+
method=None, fill_value=0)
3431+
self.assert_(bf.index.equals(Index([])))
3432+
34293433
# try to align dataframe to series along bad axis
34303434
self.assertRaises(ValueError, self.frame.align, af.ix[0,:3],
34313435
join='inner', axis=2)

pandas/tests/test_graphics.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ def test_plot(self):
4040
_check_plot_works(self.ts[:10].plot, kind='bar')
4141
_check_plot_works(self.series[:5].plot, kind='bar')
4242
_check_plot_works(self.series[:5].plot, kind='line')
43-
43+
_check_plot_works(self.series[:5].plot, kind='barh')
44+
_check_plot_works(self.series[:10].plot, kind='barh')
4445
@slow
4546
def test_hist(self):
4647
_check_plot_works(self.ts.hist)

pandas/tests/test_index.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1203,6 +1203,9 @@ def test_diff(self):
12031203
def test_from_tuples(self):
12041204
self.assertRaises(Exception, MultiIndex.from_tuples, [])
12051205

1206+
idx = MultiIndex.from_tuples( ((1,2),(3,4)), names=['a', 'b'] )
1207+
self.assertEquals(len(idx), 2)
1208+
12061209
def test_argsort(self):
12071210
result = self.index.argsort()
12081211
expected = self.index.get_tuple_index().argsort()

pandas/tests/test_panel.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -962,6 +962,20 @@ def test_multiindex_get(self):
962962
self.assert_((f1.items == [1, 2]).all())
963963
self.assert_((f2.items == [1, 2]).all())
964964

965+
ind = MultiIndex.from_tuples([('a', 1), ('a', 2), ('b', 1)],
966+
names=['first', 'second'])
967+
968+
def test_multiindex_blocks(self):
969+
ind = MultiIndex.from_tuples([('a', 1), ('a', 2), ('b', 1)],
970+
names=['first', 'second'])
971+
wp = Panel(self.panel._data)
972+
wp.items = ind
973+
f1 = wp['a']
974+
self.assert_((f1.items == [1, 2]).all())
975+
976+
f1 = wp[('b',1)]
977+
self.assert_((f1.columns == ['A', 'B', 'C', 'D']).all())
978+
965979
def test_repr_empty(self):
966980
empty = Panel()
967981
repr(empty)

pandas/tests/test_series.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,13 @@ def test_constructor_corner(self):
252252
s = Series(objs, index=[0, 1])
253253
self.assert_(isinstance(s, Series))
254254

255+
def test_constructor_sanitize(self):
256+
s = Series(np.array([1., 1., 8.]), dtype='i8')
257+
self.assertEquals(s.dtype, np.dtype('i8'))
258+
259+
s = Series(np.array([1., 1., np.nan]), copy=True, dtype='i8')
260+
self.assertEquals(s.dtype, np.dtype('f8'))
261+
255262
def test_constructor_pass_none(self):
256263
s = Series(None, index=range(5))
257264
self.assert_(s.dtype == np.float64)

0 commit comments

Comments
 (0)