|
4 | 4 | import numpy as np
|
5 | 5 | import pytest
|
6 | 6 |
|
7 |
| -from pandas import compat |
8 | 7 | from pandas._libs import tslib
|
9 | 8 | from pandas.compat.numpy import np_array_datetime64_compat
|
10 | 9 | import pandas.util.testing as tm
|
11 | 10 |
|
12 | 11 |
|
13 | 12 | class TestParseISO8601(object):
|
14 |
| - def test_parsers_iso8601(self): |
| 13 | + @pytest.mark.parametrize('date_str, exp', [ |
| 14 | + ('2011-01-02', datetime(2011, 1, 2)), |
| 15 | + ('2011-1-2', datetime(2011, 1, 2)), |
| 16 | + ('2011-01', datetime(2011, 1, 1)), |
| 17 | + ('2011-1', datetime(2011, 1, 1)), |
| 18 | + ('2011 01 02', datetime(2011, 1, 2)), |
| 19 | + ('2011.01.02', datetime(2011, 1, 2)), |
| 20 | + ('2011/01/02', datetime(2011, 1, 2)), |
| 21 | + ('2011\\01\\02', datetime(2011, 1, 2)), |
| 22 | + ('2013-01-01 05:30:00', datetime(2013, 1, 1, 5, 30)), |
| 23 | + ('2013-1-1 5:30:00', datetime(2013, 1, 1, 5, 30))]) |
| 24 | + def test_parsers_iso8601(self, date_str, exp): |
15 | 25 | # GH#12060
|
16 | 26 | # test only the iso parser - flexibility to different
|
17 | 27 | # separators and leadings 0s
|
18 | 28 | # Timestamp construction falls back to dateutil
|
19 |
| - cases = {'2011-01-02': datetime(2011, 1, 2), |
20 |
| - '2011-1-2': datetime(2011, 1, 2), |
21 |
| - '2011-01': datetime(2011, 1, 1), |
22 |
| - '2011-1': datetime(2011, 1, 1), |
23 |
| - '2011 01 02': datetime(2011, 1, 2), |
24 |
| - '2011.01.02': datetime(2011, 1, 2), |
25 |
| - '2011/01/02': datetime(2011, 1, 2), |
26 |
| - '2011\\01\\02': datetime(2011, 1, 2), |
27 |
| - '2013-01-01 05:30:00': datetime(2013, 1, 1, 5, 30), |
28 |
| - '2013-1-1 5:30:00': datetime(2013, 1, 1, 5, 30)} |
29 |
| - for date_str, exp in compat.iteritems(cases): |
30 |
| - actual = tslib._test_parse_iso8601(date_str) |
31 |
| - assert actual == exp |
| 29 | + actual = tslib._test_parse_iso8601(date_str) |
| 30 | + assert actual == exp |
32 | 31 |
|
33 | 32 | @pytest.mark.parametrize('date_str', ['2011-01/02', '2011^11^11',
|
34 | 33 | '201401', '201111', '200101',
|
@@ -113,7 +112,7 @@ def test_coerce_outside_ns_bounds_one_valid(self):
|
113 | 112 | arr = np.array(['1/1/1000', '1/1/2000'], dtype=object)
|
114 | 113 | result = tslib.array_to_datetime(arr, errors='coerce')
|
115 | 114 | expected = [tslib.iNaT,
|
116 |
| - '2000-01-01T00:00:00.000000000-0000'], |
| 115 | + '2000-01-01T00:00:00.000000000-0000'] |
117 | 116 | tm.assert_numpy_array_equal(result,
|
118 | 117 | np_array_datetime64_compat(expected,
|
119 | 118 | dtype='M8[ns]'))
|
|
0 commit comments