Skip to content

Commit 5debbe4

Browse files
committed
TST: test interval_multiples=True flag
1 parent 1cd2ddc commit 5debbe4

File tree

1 file changed

+73
-0
lines changed

1 file changed

+73
-0
lines changed

lib/matplotlib/tests/test_dates.py

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -380,6 +380,79 @@ def _create_auto_date_locator(date1, date2):
380380
assert list(map(str, mdates.num2date(locator()))) == expected
381381

382382

383+
def test_auto_date_locator_intmult():
384+
def _create_auto_date_locator(date1, date2):
385+
locator = mdates.AutoDateLocator(interval_multiples=True)
386+
locator.create_dummy_axis()
387+
locator.set_view_interval(mdates.date2num(date1),
388+
mdates.date2num(date2))
389+
return locator
390+
391+
d1 = datetime.datetime(1997, 1, 1)
392+
results = ([datetime.timedelta(weeks=52 * 200),
393+
['1980-01-01 00:00:00+00:00', '2000-01-01 00:00:00+00:00',
394+
'2020-01-01 00:00:00+00:00', '2040-01-01 00:00:00+00:00',
395+
'2060-01-01 00:00:00+00:00', '2080-01-01 00:00:00+00:00',
396+
'2100-01-01 00:00:00+00:00', '2120-01-01 00:00:00+00:00',
397+
'2140-01-01 00:00:00+00:00', '2160-01-01 00:00:00+00:00',
398+
'2180-01-01 00:00:00+00:00', '2200-01-01 00:00:00+00:00']
399+
],
400+
[datetime.timedelta(weeks=52),
401+
['1997-01-01 00:00:00+00:00', '1997-02-01 00:00:00+00:00',
402+
'1997-03-01 00:00:00+00:00', '1997-04-01 00:00:00+00:00',
403+
'1997-05-01 00:00:00+00:00', '1997-06-01 00:00:00+00:00',
404+
'1997-07-01 00:00:00+00:00', '1997-08-01 00:00:00+00:00',
405+
'1997-09-01 00:00:00+00:00', '1997-10-01 00:00:00+00:00',
406+
'1997-11-01 00:00:00+00:00', '1997-12-01 00:00:00+00:00']
407+
],
408+
[datetime.timedelta(days=141),
409+
['1997-01-01 00:00:00+00:00', '1997-01-22 00:00:00+00:00',
410+
'1997-02-01 00:00:00+00:00', '1997-02-22 00:00:00+00:00',
411+
'1997-03-01 00:00:00+00:00', '1997-03-22 00:00:00+00:00',
412+
'1997-04-01 00:00:00+00:00', '1997-04-22 00:00:00+00:00',
413+
'1997-05-01 00:00:00+00:00', '1997-05-22 00:00:00+00:00']
414+
],
415+
[datetime.timedelta(days=40),
416+
['1997-01-01 00:00:00+00:00', '1997-01-08 00:00:00+00:00',
417+
'1997-01-15 00:00:00+00:00', '1997-01-22 00:00:00+00:00',
418+
'1997-01-29 00:00:00+00:00', '1997-02-01 00:00:00+00:00',
419+
'1997-02-08 00:00:00+00:00']
420+
],
421+
[datetime.timedelta(hours=40),
422+
['1997-01-01 00:00:00+00:00', '1997-01-01 04:00:00+00:00',
423+
'1997-01-01 08:00:00+00:00', '1997-01-01 12:00:00+00:00',
424+
'1997-01-01 16:00:00+00:00', '1997-01-01 20:00:00+00:00',
425+
'1997-01-02 00:00:00+00:00', '1997-01-02 04:00:00+00:00',
426+
'1997-01-02 08:00:00+00:00', '1997-01-02 12:00:00+00:00',
427+
'1997-01-02 16:00:00+00:00']
428+
],
429+
[datetime.timedelta(minutes=20),
430+
['1997-01-01 00:00:00+00:00', '1997-01-01 00:05:00+00:00',
431+
'1997-01-01 00:10:00+00:00', '1997-01-01 00:15:00+00:00',
432+
'1997-01-01 00:20:00+00:00']
433+
],
434+
[datetime.timedelta(seconds=40),
435+
['1997-01-01 00:00:00+00:00', '1997-01-01 00:00:05+00:00',
436+
'1997-01-01 00:00:10+00:00', '1997-01-01 00:00:15+00:00',
437+
'1997-01-01 00:00:20+00:00', '1997-01-01 00:00:25+00:00',
438+
'1997-01-01 00:00:30+00:00', '1997-01-01 00:00:35+00:00',
439+
'1997-01-01 00:00:40+00:00']
440+
],
441+
[datetime.timedelta(microseconds=1500),
442+
['1996-12-31 23:59:59.999507+00:00',
443+
'1997-01-01 00:00:00+00:00',
444+
'1997-01-01 00:00:00.000502+00:00',
445+
'1997-01-01 00:00:00.001005+00:00',
446+
'1997-01-01 00:00:00.001508+00:00']
447+
],
448+
)
449+
450+
for t_delta, expected in results:
451+
d2 = d1 + t_delta
452+
locator = _create_auto_date_locator(d1, d2)
453+
assert list(map(str, mdates.num2date(locator()))) == expected
454+
455+
383456
@image_comparison(baseline_images=['date_inverted_limit'],
384457
extensions=['png'])
385458
def test_date_inverted_limit():

0 commit comments

Comments
 (0)