Skip to content

Commit 46435be

Browse files
committed
Added tests for ABC Types, Issue #10828
Added tests for ABC Types, Issue #10828 change function name for test_abc_types Issue #10859
1 parent c46ff07 commit 46435be

File tree

1 file changed

+30
-36
lines changed

1 file changed

+30
-36
lines changed

pandas/tests/test_common.py

+30-36
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import numpy as np
99
import pandas as pd
1010
from pandas.tslib import iNaT, NaT
11-
from pandas import Series, DataFrame, date_range, DatetimeIndex, Timestamp
11+
from pandas import Series, DataFrame, date_range, DatetimeIndex, Timestamp, Float64Index
1212
from pandas import compat
1313
from pandas.compat import range, long, lrange, lmap, u
1414
from pandas.core.common import notnull, isnull, array_equivalent
@@ -63,45 +63,37 @@ def __call__(self):
6363
assert getname(somecall()) == 'somecall'
6464
assert getname(1) is None
6565

66-
67-
def test_abc_types():
68-
tuples = [('bar', 'one'), ('bar', 'two')]
69-
names = ['first', 'second']
70-
values = [1, 2, 3, 4]
71-
index = pd.Index(['a', 'b', 'c'])
72-
int64_index = pd.Int64Index([1, 2, 3])
73-
float64_index = pd.Float64Index([1, 2, 3])
74-
multi_index = pd.MultiIndex.from_tuples(tuples, names=names)
66+
#Issue 10859
67+
class TestABCClasses(tm.TestCase):
68+
tuples = [[1, 2, 2], ['red', 'blue', 'red']]
69+
multi_index = pd.MultiIndex.from_arrays(tuples, names=('number', 'color'))
7570
datetime_index = pd.to_datetime(['2000/1/1', '2010/1/1'])
7671
timedelta_index = pd.to_timedelta(np.arange(5), unit='s')
7772
period_index = pd.period_range('2000/1/1', '2010/1/1/', freq='M')
78-
categorical = pd.Categorical([1, 2, 3, 4], categories=[4, 2, 3, 1])
79-
categorical_df = pd.DataFrame({"values": values}, index=categorical)
80-
categorical_index = categorical_df.index
81-
series = pd.Series(values)
82-
df = pd.DataFrame({"names": names}, index=multi_index)
83-
panel = df.to_panel()
84-
sparse_series = series.to_sparse()
73+
categorical = pd.Categorical([1, 2, 3], categories=[2, 3, 1])
74+
categorical_df = pd.DataFrame({"values": [1, 2, 3]}, index=categorical)
75+
df = pd.DataFrame({'names': ['a', 'b', 'c']}, index=multi_index)
76+
sparse_series = pd.Series([1, 2, 3]).to_sparse()
8577
sparse_array = pd.SparseArray(np.random.randn(10))
86-
period = pd.Period('2012', freq='A-DEC')
87-
88-
assert(isinstance(index, com.ABCIndex))
89-
assert(isinstance(int64_index, com.ABCInt64Index))
90-
assert(isinstance(float64_index, com.ABCFloat64Index))
91-
assert(isinstance(multi_index, com.ABCMultiIndex))
92-
assert(isinstance(datetime_index, com.ABCDatetimeIndex))
93-
assert(isinstance(timedelta_index, com.ABCTimedeltaIndex))
94-
assert(isinstance(period_index, com.ABCPeriodIndex))
95-
assert(isinstance(categorical_index, com.ABCCategoricalIndex))
96-
assert(isinstance(index, com.ABCIndexClass))
97-
assert(isinstance(int64_index, com.ABCIndexClass))
98-
assert(isinstance(series, com.ABCSeries))
99-
assert(isinstance(df, com.ABCDataFrame))
100-
assert(isinstance(panel, com.ABCPanel))
101-
assert(isinstance(sparse_series, com.ABCSparseSeries))
102-
assert(isinstance(sparse_array, com.ABCSparseArray))
103-
assert(isinstance(categorical, com.ABCCategorical))
104-
assert(isinstance(period, com.ABCPeriod))
78+
79+
def test_abc_types(self):
80+
self.assertIsInstance(pd.Index(['a', 'b', 'c']), com.ABCIndex)
81+
self.assertIsInstance(pd.Int64Index([1, 2, 3]), com.ABCInt64Index)
82+
self.assertIsInstance(pd.Float64Index([1, 2, 3]), com.ABCFloat64Index)
83+
self.assertIsInstance(self.multi_index, com.ABCMultiIndex)
84+
self.assertIsInstance(self.datetime_index, com.ABCDatetimeIndex)
85+
self.assertIsInstance(self.timedelta_index, com.ABCTimedeltaIndex)
86+
self.assertIsInstance(self.period_index, com.ABCPeriodIndex)
87+
self.assertIsInstance(self.categorical_df.index, com.ABCCategoricalIndex)
88+
self.assertIsInstance(pd.Index(['a', 'b', 'c']), com.ABCIndexClass)
89+
self.assertIsInstance(pd.Int64Index([1, 2, 3]), com.ABCIndexClass)
90+
self.assertIsInstance(pd.Series([1, 2, 3]), com.ABCSeries)
91+
self.assertIsInstance(self.df, com.ABCDataFrame)
92+
self.assertIsInstance(self.df.to_panel(), com.ABCPanel)
93+
self.assertIsInstance(self.sparse_series, com.ABCSparseSeries)
94+
self.assertIsInstance(self.sparse_array, com.ABCSparseArray)
95+
self.assertIsInstance(self.categorical, com.ABCCategorical)
96+
self.assertIsInstance(pd.Period('2012', freq='A-DEC'), com.ABCPeriod)
10597

10698

10799
def test_notnull():
@@ -272,6 +264,8 @@ def test_array_equivalent():
272264
assert not array_equivalent(np.array([np.nan, 1, np.nan]),
273265
np.array([np.nan, 2, np.nan]))
274266
assert not array_equivalent(np.array(['a', 'b', 'c', 'd']), np.array(['e', 'e']))
267+
assert array_equivalent(Float64Index([0, np.nan]), Float64Index([0, np.nan]))
268+
assert not array_equivalent(Float64Index([0, np.nan]), Float64Index([1, np.nan]))
275269
assert array_equivalent(DatetimeIndex([0, np.nan]), DatetimeIndex([0, np.nan]))
276270
assert not array_equivalent(DatetimeIndex([0, np.nan]), DatetimeIndex([1, np.nan]))
277271

0 commit comments

Comments
 (0)