|
| 1 | +import locale |
| 2 | +import calendar |
| 3 | + |
1 | 4 | import pytest
|
2 | 5 |
|
3 | 6 | import numpy as np
|
@@ -173,7 +176,6 @@ def test_normalize(self):
|
173 | 176 | class TestDatetime64(object):
|
174 | 177 |
|
175 | 178 | def test_datetimeindex_accessors(self):
|
176 |
| - |
177 | 179 | dti_naive = DatetimeIndex(freq='D', start=datetime(1998, 1, 1),
|
178 | 180 | periods=365)
|
179 | 181 | # GH 13303
|
@@ -220,23 +222,6 @@ def test_datetimeindex_accessors(self):
|
220 | 222 | assert not dti.is_year_end[0]
|
221 | 223 | assert dti.is_year_end[364]
|
222 | 224 |
|
223 |
| - # GH 11128 |
224 |
| - assert dti.weekday_name[4] == u'Monday' |
225 |
| - assert dti.weekday_name[5] == u'Tuesday' |
226 |
| - assert dti.weekday_name[6] == u'Wednesday' |
227 |
| - assert dti.weekday_name[7] == u'Thursday' |
228 |
| - assert dti.weekday_name[8] == u'Friday' |
229 |
| - assert dti.weekday_name[9] == u'Saturday' |
230 |
| - assert dti.weekday_name[10] == u'Sunday' |
231 |
| - |
232 |
| - assert Timestamp('2016-04-04').weekday_name == u'Monday' |
233 |
| - assert Timestamp('2016-04-05').weekday_name == u'Tuesday' |
234 |
| - assert Timestamp('2016-04-06').weekday_name == u'Wednesday' |
235 |
| - assert Timestamp('2016-04-07').weekday_name == u'Thursday' |
236 |
| - assert Timestamp('2016-04-08').weekday_name == u'Friday' |
237 |
| - assert Timestamp('2016-04-09').weekday_name == u'Saturday' |
238 |
| - assert Timestamp('2016-04-10').weekday_name == u'Sunday' |
239 |
| - |
240 | 225 | assert len(dti.year) == 365
|
241 | 226 | assert len(dti.month) == 365
|
242 | 227 | assert len(dti.day) == 365
|
@@ -342,6 +327,31 @@ def test_datetimeindex_accessors(self):
|
342 | 327 | assert dates.weekofyear.tolist() == expected
|
343 | 328 | assert [d.weekofyear for d in dates] == expected
|
344 | 329 |
|
| 330 | + # GH 12806 |
| 331 | + @pytest.mark.skipif(tm.get_locales() is None or len(tm.get_locales()) == 0, |
| 332 | + reason='No available locales') |
| 333 | + @pytest.mark.parametrize('time_locale', tm.get_locales()) |
| 334 | + def test_datetime_name_accessors(self, time_locale): |
| 335 | + with tm.set_locale(time_locale, locale.LC_TIME): |
| 336 | + # GH 11128 |
| 337 | + dti = DatetimeIndex(freq='D', start=datetime(1998, 1, 1), |
| 338 | + periods=365) |
| 339 | + for day, name in zip(range(4, 11), calendar.day_name): |
| 340 | + # Test Monday -> Sunday |
| 341 | + assert dti.weekday_name[day] == name.capitalize() |
| 342 | + date = datetime(2016, 4, day) |
| 343 | + assert Timestamp(date).weekday_name == name.capitalize() |
| 344 | + |
| 345 | + # GH 12805 |
| 346 | + dti = DatetimeIndex(freq='M', start='2012', end='2013') |
| 347 | + # Test January -> December |
| 348 | + result = dti.month_name |
| 349 | + expected = Index([month.capitalize() |
| 350 | + for month in calendar.month_name[1:]]) |
| 351 | + tm.assert_index_equal(result, expected) |
| 352 | + for date, result in zip(dti, calendar.month_name[1:]): |
| 353 | + assert date.month_name == result.capitalize() |
| 354 | + |
345 | 355 | def test_nanosecond_field(self):
|
346 | 356 | dti = DatetimeIndex(np.arange(10))
|
347 | 357 |
|
|
0 commit comments