|
42 | 42 | from numpy.testing.decorators import slow
|
43 | 43 |
|
44 | 44 |
|
| 45 | +def _skip_if_no_pytz(): |
| 46 | + try: |
| 47 | + import pytz |
| 48 | + except ImportError: |
| 49 | + raise nose.SkipTest |
| 50 | + |
| 51 | + |
45 | 52 | class TestTimeSeriesDuplicates(unittest.TestCase):
|
46 | 53 | _multiprocess_can_split_ = True
|
47 | 54 |
|
@@ -168,13 +175,6 @@ def assert_range_equal(left, right):
|
168 | 175 | assert(left.tz == right.tz)
|
169 | 176 |
|
170 | 177 |
|
171 |
| -def _skip_if_no_pytz(): |
172 |
| - try: |
173 |
| - import pytz |
174 |
| - except ImportError: |
175 |
| - raise nose.SkipTest |
176 |
| - |
177 |
| - |
178 | 178 | class TestTimeSeries(unittest.TestCase):
|
179 | 179 | _multiprocess_can_split_ = True
|
180 | 180 |
|
@@ -1265,6 +1265,29 @@ def test_append_concat(self):
|
1265 | 1265 | self.assert_(rng1.append(rng1).name == 'foo')
|
1266 | 1266 | self.assert_(rng1.append(rng2).name is None)
|
1267 | 1267 |
|
| 1268 | + def test_append_concat_tz(self): |
| 1269 | + #GH 2938 |
| 1270 | + _skip_if_no_pytz() |
| 1271 | + |
| 1272 | + rng = date_range('5/8/2012 1:45', periods=10, freq='5T', |
| 1273 | + tz='US/Eastern') |
| 1274 | + rng2 = date_range('5/8/2012 2:35', periods=10, freq='5T', |
| 1275 | + tz='US/Eastern') |
| 1276 | + rng3 = date_range('5/8/2012 1:45', periods=20, freq='5T', |
| 1277 | + tz='US/Eastern') |
| 1278 | + ts = Series(np.random.randn(len(rng)), rng) |
| 1279 | + df = DataFrame(np.random.randn(len(rng), 4), index=rng) |
| 1280 | + ts2 = Series(np.random.randn(len(rng2)), rng2) |
| 1281 | + df2 = DataFrame(np.random.randn(len(rng2), 4), index=rng2) |
| 1282 | + |
| 1283 | + result = ts.append(ts2) |
| 1284 | + result_df = df.append(df2) |
| 1285 | + self.assert_(result.index.equals(rng3)) |
| 1286 | + self.assert_(result_df.index.equals(rng3)) |
| 1287 | + |
| 1288 | + appended = rng.append(rng2) |
| 1289 | + self.assert_(appended.equals(rng3)) |
| 1290 | + |
1268 | 1291 | def test_set_dataframe_column_ns_dtype(self):
|
1269 | 1292 | x = DataFrame([datetime.now(), datetime.now()])
|
1270 | 1293 | self.assert_(x[0].dtype == np.dtype('M8[ns]'))
|
|
0 commit comments