19
19
from pandas ._libs .tslibs .offsets import shift_months
20
20
21
21
22
- @pytest .fixture (params = [None , 'UTC' , 'Asia/Tokyo' ,
23
- 'US/Eastern' , 'dateutil/Asia/Singapore' ,
24
- 'dateutil/US/Pacific' ])
25
- def tz (request ):
26
- return request .param
27
-
28
-
29
22
@pytest .fixture (params = [pd .offsets .Hour (2 ), timedelta (hours = 2 ),
30
23
np .timedelta64 (2 , 'h' ), Timedelta (hours = 2 )],
31
24
ids = str )
@@ -50,7 +43,8 @@ class TestDatetimeIndexComparisons(object):
50
43
@pytest .mark .parametrize ('other' , [datetime (2016 , 1 , 1 ),
51
44
Timestamp ('2016-01-01' ),
52
45
np .datetime64 ('2016-01-01' )])
53
- def test_dti_cmp_datetimelike (self , other , tz ):
46
+ def test_dti_cmp_datetimelike (self , other , tz_naive_fixture ):
47
+ tz = tz_naive_fixture
54
48
dti = pd .date_range ('2016-01-01' , periods = 2 , tz = tz )
55
49
if tz is not None :
56
50
if isinstance (other , np .datetime64 ):
@@ -78,9 +72,10 @@ def test_dti_cmp_datetimelike(self, other, tz):
78
72
expected = np .array ([True , False ])
79
73
tm .assert_numpy_array_equal (result , expected )
80
74
81
- def dti_cmp_non_datetime (self , tz ):
75
+ def dti_cmp_non_datetime (self , tz_naive_fixture ):
82
76
# GH#19301 by convention datetime.date is not considered comparable
83
77
# to Timestamp or DatetimeIndex. This may change in the future.
78
+ tz = tz_naive_fixture
84
79
dti = pd .date_range ('2016-01-01' , periods = 2 , tz = tz )
85
80
86
81
other = datetime (2016 , 1 , 1 ).date ()
@@ -96,20 +91,23 @@ def dti_cmp_non_datetime(self, tz):
96
91
dti >= other
97
92
98
93
@pytest .mark .parametrize ('other' , [None , np .nan , pd .NaT ])
99
- def test_dti_eq_null_scalar (self , other , tz ):
94
+ def test_dti_eq_null_scalar (self , other , tz_naive_fixture ):
100
95
# GH#19301
96
+ tz = tz_naive_fixture
101
97
dti = pd .date_range ('2016-01-01' , periods = 2 , tz = tz )
102
98
assert not (dti == other ).any ()
103
99
104
100
@pytest .mark .parametrize ('other' , [None , np .nan , pd .NaT ])
105
- def test_dti_ne_null_scalar (self , other , tz ):
101
+ def test_dti_ne_null_scalar (self , other , tz_naive_fixture ):
106
102
# GH#19301
103
+ tz = tz_naive_fixture
107
104
dti = pd .date_range ('2016-01-01' , periods = 2 , tz = tz )
108
105
assert (dti != other ).all ()
109
106
110
107
@pytest .mark .parametrize ('other' , [None , np .nan ])
111
- def test_dti_cmp_null_scalar_inequality (self , tz , other ):
108
+ def test_dti_cmp_null_scalar_inequality (self , tz_naive_fixture , other ):
112
109
# GH#19301
110
+ tz = tz_naive_fixture
113
111
dti = pd .date_range ('2016-01-01' , periods = 2 , tz = tz )
114
112
115
113
with pytest .raises (TypeError ):
@@ -335,32 +333,36 @@ def test_dti_radd_timestamp_raises(self):
335
333
# -------------------------------------------------------------
336
334
# Binary operations DatetimeIndex and int
337
335
338
- def test_dti_add_int (self , tz , one ):
336
+ def test_dti_add_int (self , tz_naive_fixture , one ):
339
337
# Variants of `one` for #19012
338
+ tz = tz_naive_fixture
340
339
rng = pd .date_range ('2000-01-01 09:00' , freq = 'H' ,
341
340
periods = 10 , tz = tz )
342
341
result = rng + one
343
342
expected = pd .date_range ('2000-01-01 10:00' , freq = 'H' ,
344
343
periods = 10 , tz = tz )
345
344
tm .assert_index_equal (result , expected )
346
345
347
- def test_dti_iadd_int (self , tz , one ):
346
+ def test_dti_iadd_int (self , tz_naive_fixture , one ):
347
+ tz = tz_naive_fixture
348
348
rng = pd .date_range ('2000-01-01 09:00' , freq = 'H' ,
349
349
periods = 10 , tz = tz )
350
350
expected = pd .date_range ('2000-01-01 10:00' , freq = 'H' ,
351
351
periods = 10 , tz = tz )
352
352
rng += one
353
353
tm .assert_index_equal (rng , expected )
354
354
355
- def test_dti_sub_int (self , tz , one ):
355
+ def test_dti_sub_int (self , tz_naive_fixture , one ):
356
+ tz = tz_naive_fixture
356
357
rng = pd .date_range ('2000-01-01 09:00' , freq = 'H' ,
357
358
periods = 10 , tz = tz )
358
359
result = rng - one
359
360
expected = pd .date_range ('2000-01-01 08:00' , freq = 'H' ,
360
361
periods = 10 , tz = tz )
361
362
tm .assert_index_equal (result , expected )
362
363
363
- def test_dti_isub_int (self , tz , one ):
364
+ def test_dti_isub_int (self , tz_naive_fixture , one ):
365
+ tz = tz_naive_fixture
364
366
rng = pd .date_range ('2000-01-01 09:00' , freq = 'H' ,
365
367
periods = 10 , tz = tz )
366
368
expected = pd .date_range ('2000-01-01 08:00' , freq = 'H' ,
@@ -414,8 +416,9 @@ def test_dti_add_intarray_no_freq(self, box):
414
416
# -------------------------------------------------------------
415
417
# DatetimeIndex.shift is used in integer addition
416
418
417
- def test_dti_shift_tzaware (self , tz ):
419
+ def test_dti_shift_tzaware (self , tz_naive_fixture ):
418
420
# GH#9903
421
+ tz = tz_naive_fixture
419
422
idx = pd .DatetimeIndex ([], name = 'xxx' , tz = tz )
420
423
tm .assert_index_equal (idx .shift (0 , freq = 'H' ), idx )
421
424
tm .assert_index_equal (idx .shift (3 , freq = 'H' ), idx )
@@ -502,28 +505,32 @@ def test_dti_shift_near_midnight(self, shift, result_time):
502
505
# -------------------------------------------------------------
503
506
# Binary operations DatetimeIndex and timedelta-like
504
507
505
- def test_dti_add_timedeltalike (self , tz , delta ):
508
+ def test_dti_add_timedeltalike (self , tz_naive_fixture , delta ):
509
+ tz = tz_naive_fixture
506
510
rng = pd .date_range ('2000-01-01' , '2000-02-01' , tz = tz )
507
511
result = rng + delta
508
512
expected = pd .date_range ('2000-01-01 02:00' ,
509
513
'2000-02-01 02:00' , tz = tz )
510
514
tm .assert_index_equal (result , expected )
511
515
512
- def test_dti_iadd_timedeltalike (self , tz , delta ):
516
+ def test_dti_iadd_timedeltalike (self , tz_naive_fixture , delta ):
517
+ tz = tz_naive_fixture
513
518
rng = pd .date_range ('2000-01-01' , '2000-02-01' , tz = tz )
514
519
expected = pd .date_range ('2000-01-01 02:00' ,
515
520
'2000-02-01 02:00' , tz = tz )
516
521
rng += delta
517
522
tm .assert_index_equal (rng , expected )
518
523
519
- def test_dti_sub_timedeltalike (self , tz , delta ):
524
+ def test_dti_sub_timedeltalike (self , tz_naive_fixture , delta ):
525
+ tz = tz_naive_fixture
520
526
rng = pd .date_range ('2000-01-01' , '2000-02-01' , tz = tz )
521
527
expected = pd .date_range ('1999-12-31 22:00' ,
522
528
'2000-01-31 22:00' , tz = tz )
523
529
result = rng - delta
524
530
tm .assert_index_equal (result , expected )
525
531
526
- def test_dti_isub_timedeltalike (self , tz , delta ):
532
+ def test_dti_isub_timedeltalike (self , tz_naive_fixture , delta ):
533
+ tz = tz_naive_fixture
527
534
rng = pd .date_range ('2000-01-01' , '2000-02-01' , tz = tz )
528
535
expected = pd .date_range ('1999-12-31 22:00' ,
529
536
'2000-01-31 22:00' , tz = tz )
@@ -532,8 +539,9 @@ def test_dti_isub_timedeltalike(self, tz, delta):
532
539
533
540
# -------------------------------------------------------------
534
541
# Binary operations DatetimeIndex and TimedeltaIndex/array
535
- def test_dti_add_tdi (self , tz ):
542
+ def test_dti_add_tdi (self , tz_naive_fixture ):
536
543
# GH 17558
544
+ tz = tz_naive_fixture
537
545
dti = DatetimeIndex ([Timestamp ('2017-01-01' , tz = tz )] * 10 )
538
546
tdi = pd .timedelta_range ('0 days' , periods = 10 )
539
547
expected = pd .date_range ('2017-01-01' , periods = 10 , tz = tz )
@@ -552,8 +560,9 @@ def test_dti_add_tdi(self, tz):
552
560
result = tdi .values + dti
553
561
tm .assert_index_equal (result , expected )
554
562
555
- def test_dti_iadd_tdi (self , tz ):
563
+ def test_dti_iadd_tdi (self , tz_naive_fixture ):
556
564
# GH 17558
565
+ tz = tz_naive_fixture
557
566
dti = DatetimeIndex ([Timestamp ('2017-01-01' , tz = tz )] * 10 )
558
567
tdi = pd .timedelta_range ('0 days' , periods = 10 )
559
568
expected = pd .date_range ('2017-01-01' , periods = 10 , tz = tz )
@@ -576,8 +585,9 @@ def test_dti_iadd_tdi(self, tz):
576
585
result += dti
577
586
tm .assert_index_equal (result , expected )
578
587
579
- def test_dti_sub_tdi (self , tz ):
588
+ def test_dti_sub_tdi (self , tz_naive_fixture ):
580
589
# GH 17558
590
+ tz = tz_naive_fixture
581
591
dti = DatetimeIndex ([Timestamp ('2017-01-01' , tz = tz )] * 10 )
582
592
tdi = pd .timedelta_range ('0 days' , periods = 10 )
583
593
expected = pd .date_range ('2017-01-01' , periods = 10 , tz = tz , freq = '-1D' )
@@ -598,8 +608,9 @@ def test_dti_sub_tdi(self, tz):
598
608
with tm .assert_raises_regex (TypeError , msg ):
599
609
tdi .values - dti
600
610
601
- def test_dti_isub_tdi (self , tz ):
611
+ def test_dti_isub_tdi (self , tz_naive_fixture ):
602
612
# GH 17558
613
+ tz = tz_naive_fixture
603
614
dti = DatetimeIndex ([Timestamp ('2017-01-01' , tz = tz )] * 10 )
604
615
tdi = pd .timedelta_range ('0 days' , periods = 10 )
605
616
expected = pd .date_range ('2017-01-01' , periods = 10 , tz = tz , freq = '-1D' )
@@ -653,7 +664,8 @@ def test_add_datetimelike_and_dti_tz(self, addend):
653
664
# -------------------------------------------------------------
654
665
# __add__/__sub__ with ndarray[datetime64] and ndarray[timedelta64]
655
666
656
- def test_dti_add_dt64_array_raises (self , tz ):
667
+ def test_dti_add_dt64_array_raises (self , tz_naive_fixture ):
668
+ tz = tz_naive_fixture
657
669
dti = pd .date_range ('2016-01-01' , periods = 3 , tz = tz )
658
670
dtarr = dti .values
659
671
@@ -672,7 +684,8 @@ def test_dti_sub_dt64_array_naive(self):
672
684
result = dtarr - dti
673
685
tm .assert_index_equal (result , expected )
674
686
675
- def test_dti_sub_dt64_array_aware_raises (self , tz ):
687
+ def test_dti_sub_dt64_array_aware_raises (self , tz_naive_fixture ):
688
+ tz = tz_naive_fixture
676
689
if tz is None :
677
690
return
678
691
dti = pd .date_range ('2016-01-01' , periods = 3 , tz = tz )
@@ -683,7 +696,8 @@ def test_dti_sub_dt64_array_aware_raises(self, tz):
683
696
with pytest .raises (TypeError ):
684
697
dtarr - dti
685
698
686
- def test_dti_add_td64_array (self , tz ):
699
+ def test_dti_add_td64_array (self , tz_naive_fixture ):
700
+ tz = tz_naive_fixture
687
701
dti = pd .date_range ('2016-01-01' , periods = 3 , tz = tz )
688
702
tdi = dti - dti .shift (1 )
689
703
tdarr = tdi .values
@@ -694,7 +708,8 @@ def test_dti_add_td64_array(self, tz):
694
708
result = tdarr + dti
695
709
tm .assert_index_equal (result , expected )
696
710
697
- def test_dti_sub_td64_array (self , tz ):
711
+ def test_dti_sub_td64_array (self , tz_naive_fixture ):
712
+ tz = tz_naive_fixture
698
713
dti = pd .date_range ('2016-01-01' , periods = 3 , tz = tz )
699
714
tdi = dti - dti .shift (1 )
700
715
tdarr = tdi .values
@@ -867,8 +882,9 @@ def test_dti_add_series(self, tz, names):
867
882
result4 = index + ser .values
868
883
tm .assert_index_equal (result4 , expected )
869
884
870
- def test_dti_add_offset_array (self , tz ):
885
+ def test_dti_add_offset_array (self , tz_naive_fixture ):
871
886
# GH#18849
887
+ tz = tz_naive_fixture
872
888
dti = pd .date_range ('2017-01-01' , periods = 2 , tz = tz )
873
889
other = np .array ([pd .offsets .MonthEnd (), pd .offsets .Day (n = 2 )])
874
890
@@ -885,8 +901,9 @@ def test_dti_add_offset_array(self, tz):
885
901
@pytest .mark .parametrize ('names' , [(None , None , None ),
886
902
('foo' , 'bar' , None ),
887
903
('foo' , 'foo' , 'foo' )])
888
- def test_dti_add_offset_index (self , tz , names ):
904
+ def test_dti_add_offset_index (self , tz_naive_fixture , names ):
889
905
# GH#18849, GH#19744
906
+ tz = tz_naive_fixture
890
907
dti = pd .date_range ('2017-01-01' , periods = 2 , tz = tz , name = names [0 ])
891
908
other = pd .Index ([pd .offsets .MonthEnd (), pd .offsets .Day (n = 2 )],
892
909
name = names [1 ])
@@ -901,8 +918,9 @@ def test_dti_add_offset_index(self, tz, names):
901
918
res2 = other + dti
902
919
tm .assert_index_equal (res2 , expected )
903
920
904
- def test_dti_sub_offset_array (self , tz ):
921
+ def test_dti_sub_offset_array (self , tz_naive_fixture ):
905
922
# GH#18824
923
+ tz = tz_naive_fixture
906
924
dti = pd .date_range ('2017-01-01' , periods = 2 , tz = tz )
907
925
other = np .array ([pd .offsets .MonthEnd (), pd .offsets .Day (n = 2 )])
908
926
@@ -915,8 +933,9 @@ def test_dti_sub_offset_array(self, tz):
915
933
@pytest .mark .parametrize ('names' , [(None , None , None ),
916
934
('foo' , 'bar' , None ),
917
935
('foo' , 'foo' , 'foo' )])
918
- def test_dti_sub_offset_index (self , tz , names ):
936
+ def test_dti_sub_offset_index (self , tz_naive_fixture , names ):
919
937
# GH#18824, GH#19744
938
+ tz = tz_naive_fixture
920
939
dti = pd .date_range ('2017-01-01' , periods = 2 , tz = tz , name = names [0 ])
921
940
other = pd .Index ([pd .offsets .MonthEnd (), pd .offsets .Day (n = 2 )],
922
941
name = names [1 ])
@@ -930,8 +949,9 @@ def test_dti_sub_offset_index(self, tz, names):
930
949
@pytest .mark .parametrize ('names' , [(None , None , None ),
931
950
('foo' , 'bar' , None ),
932
951
('foo' , 'foo' , 'foo' )])
933
- def test_dti_with_offset_series (self , tz , names ):
952
+ def test_dti_with_offset_series (self , tz_naive_fixture , names ):
934
953
# GH#18849
954
+ tz = tz_naive_fixture
935
955
dti = pd .date_range ('2017-01-01' , periods = 2 , tz = tz , name = names [0 ])
936
956
other = Series ([pd .offsets .MonthEnd (), pd .offsets .Day (n = 2 )],
937
957
name = names [1 ])
0 commit comments