+
    yȇiO                       R t ^ RIHtHtHt ^ RIt^ RIt^ RIt^ RIH	t	 ^ RI
HtHtHtHtHt ^ RIHtHt ^ RIHu Ht ^ RIt^ RIHtHtHtHtHtHtHtH t  ^ RI!H"t# ^ RI$H%t& ^ RI'H(t(H)t) ^ R	I*H+t+ ]! R
^^4      ]! R^^4      ut,t-R t. ! R R4      t/ ! R R4      t0 ! R R4      t1 ! R R4      t2 ! R R4      t3 ! R R4      t4 ! R R4      t5 ! R R4      t6 ! R R4      t7R# )zP
test date_range, bdate_range construction from the convenience range functions
)datetimetime	timedeltaN)	timezones)BDayCDay
DateOffsetMonthEndprefix_mapping)OutOfBoundsDatetimePandas4Warning)	DataFrameDatetimeIndexSeries	Timedelta	Timestampbdate_range
date_rangeoffsets)_generate_range)FixedOffsetfixed_off_no_name)USFederalHolidayCalendar    c                d   W^ ,          8H  pWR,          8H  pVR8X  d   V'       d   VRR pV# VR8X  d   V'       d   VR,          pV# VR8X  d   V'       d   V'       d   V^R pV# VR8X  d   V'       d   VRR pV# VR8X  d   V'       d   VR,          pV# VR8X  d   VR,          pV# VR,          pV# )	z8Helper to get expected range from a both inclusive rangeleftNright   NNneitherbothNNN )begin_to_matchend_to_match
both_rangeinclusive_endpoints
left_matchright_matchexpected_ranges   &&&&   ~/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/indexes/datetimes/test_date_range.py_get_expected_ranger-   4   s      a=0JR.0Kf$#CR  
	'J#B  
		)j[#Ab)  
		)k#CR  
		)j#B  
	&#A  $A    c                   b   a  ] tR t^Pt o R tR tR t]P                  R 4       t	R t
R tRtV tR# )	TestTimestampEquivDateRangec                ^    \        R RRR7      pV^ ,          p\        R RR7      pW28X  g   Q hR# )2009041520090519
US/EasterntzNr   r   selfrngstamptss   &   r,   test_date_range_timestamp_equiv;TestTimestampEquivDateRange.test_date_range_timestamp_equivV   s/    ZLAAzl3{{r.   c                ^    \        R RRR7      pV^ ,          p\        R RR7      pW28X  g   Q hR# )r2   r3   dateutil/US/Easternr5   Nr7   r8   s   &   r,   (test_date_range_timestamp_equiv_dateutilDTestTimestampEquivDateRange.test_date_range_timestamp_equiv_dateutil]   s1    Z4IJAz&;<{{r.   c                    \         P                  ! R 4      p\        RRVP                  R4      R7      pV^ ,          p\	        RVP                  R4      R7      pWC8X  g   Q hR# )pytzr2   r3   r4   r5   N)pytestimportorskipr   timezoner   )r9   rD   r:   r;   r<   s   &    r,   -test_date_range_timestamp_equiv_explicit_pytzITestTimestampEquivDateRange.test_date_range_timestamp_equiv_explicit_pytzd   sQ    ""6*ZDMM,4OPAzdmmL&AB{{r.   c                    ^ RI Hp \        RRV! R4      R7      pV^ ,          p\        RV! R4      R7      pWC8X  g   Q hR# )    )dateutil_gettzr2   r3   r4   r5   N)pandas._libs.tslibs.timezonesrL   r   r   )r9   gettzr:   r;   r<   s   &    r,   1test_date_range_timestamp_equiv_explicit_dateutilMTestTimestampEquivDateRange.test_date_range_timestamp_equiv_explicit_dateutill   s<    IZE,4GHAzeL&9:{{r.   c                p    \        R ^^4      p\        V^RR7      ^ ,          p\        V4      pW28X  g   Q hR# )  DperiodsfreqN)r   r   r   )r9   datetime_instancetimestamp_instancer<   s   &   r,   6test_date_range_timestamp_equiv_from_datetime_instanceRTestTimestampEquivDateRange.test_date_range_timestamp_equiv_from_datetime_instancev   s@    $T1a0 ((913OPQR()'''r.   c                V    \        R ^RR7      ^ ,          p\        R 4      pW8X  g   Q hR# )z
2014-03-05rS   rT   Nr7   )r9   rX   r<   s   &  r,   2test_date_range_timestamp_equiv_preserve_frequencyNTestTimestampEquivDateRange.test_date_range_timestamp_equiv_preserve_frequency   s,    'acJ1M|$!'''r.   r$   N)__name__
__module____qualname____firstlineno__r=   rA   rH   tdskip_if_windowsrO   rY   r\   __static_attributes____classdictcell____classdict__s   @r,   r0   r0   P   s=       (( (r.   r0   c                     a  ] tR t^t o R tR tR t]P                  P                  R. RCO4      R 4       t
R t]P                  P                  R. RDO4      R 4       tR tR	 tR
 tR tR t]P                  P$                  ]P                  P                  RRERF.4      R 4       4       tR tR tR tR tR tR t]P                  P                  R. RGO]! R^^4      ]! R^^4      R.]! R4      ]! R4      R.]! RRR7      ]! RRR7      R.]! RRR7      ]! RRR7      R..4      R 4       tR tR tR tR  t R! t!R" t"R# t#R$ t$R% t%]P                  P                  R&]! R'^^4      ]! R'^^4      .]! R(^^4      ]! R(^^4      ..4      R) 4       t&R* t']P                  P                  R. RHO4      ]P                  P                  R+RR.4      R, 4       4       t(]P                  P                  R. RHO4      R- 4       t)R. t*R/ t+R0 t,R1 t-R2 t.R3 t/R4 t0R5 t1R6 t2]P                  P                  R. RIO4      R7 4       t3]P                  P                  R8. RJO4      R9 4       t4R: t5]P                  P                  RR;R<.4      R= 4       t6]P                  P                  R>. RKO4      R? 4       t7]P                  P                  R@. RLO4      RA 4       t8RBt9V t:R# )MTestDateRangesc                J    \        R ^RRR7      pVP                  R8X  g   Q hR# )z
2000-01-01YETEST)startrU   rV   nameN)r   rn   )r9   idxs   & r,   test_date_range_name#TestDateRanges.test_date_range_name   s$    |QTOxx6!!!r.   c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        RRRR7       RRR4       R#   + '       g   i     R# ; i)z#periods must be an integer, got foomatch1/1/2000foorS   rm   rU   rV   NrE   raises	TypeErrorr   r9   msgs   & r,   test_date_range_invalid_periods.TestDateRanges.test_date_range_invalid_periods   s3    3]]9C00ZSA 1000s   A  A	c                    R p\         P                  ! \        VR7      ;_uu_ 4        \        RRR7       RRR4       R#   + '       g   i     R# ; i)zperiods must be an integerrs   ru   g      %@rU   Nrx   r{   s   & r,   !test_date_range_fractional_period0TestDateRanges.test_date_range_fractional_period   s1    *]]9C00z40 1000s	   ?A	rV   c                    R V 2p\         P                  ! \        VR7      ;_uu_ 4        \        R^VR7       RRR4       R#   + '       g   i     R# ; iInvalid frequency: rs   ru   rT   NrE   ry   
ValueErrorr   r9   rV   r|   s   && r,   +test_date_range_frequency_M_SM_BQ_BY_raises:TestDateRanges.test_date_range_frequency_M_SM_BQ_BY_raises   s:    #D6*]]:S11z148 2111   AA	c                    \        R ^^4      p\        P                  ! \        RR7      ;_uu_ 4        \	        VR^R7       RRR4       R#   + '       g   i     R# ; i)  zpass as a string insteadrs   )endrV   rU   N)rS      )r   rE   ry   rz   r   )r9   edates   & r,   !test_date_range_tuple_freq_raises0TestDateRanges.test_date_range_tuple_freq_raises   s>    q!$]]9,FGG5x< HGGGs   AA	c                B   \        R V 24      p\        R4      pVR8w  d   RMRp\        W2,           V^V,          ,           VR7      p\        \	        ^^4       Uu. uF  qcWb,          ,           NK  	  upVVR7      p\
        P                  ! WW4       \        V^V,          ,           W2,           VR7      p\        . WAR7      p\
        P                  ! WW4       \        W2,           W2,           VR7      p\        W2,           .WAR7      p\
        P                  ! WW4       R# u upi )1z
1970-01-01nsM8[us]M8[ns]rm   r   rV   dtyperV   N)r   r   r   r   rangetmassert_index_equal)r9   rV   rb   r<   	exp_dtypero   nexps   &&      r,   test_date_range_edges$TestDateRanges.test_date_range_edges   s    4&z"|$ $H(	'QV

 "'1+.+Q!&[[+.

 	c' q2v+

 Bi;
c' '

 RWIYB
c'- /s   Dc                    \        ^4      p\        P                  ! \        RR7      ;_uu_ 4        \	        \
        P                  ^VR7       RRR4       R#   + '       g   i     R# ; i)r   Cannot generate range withrs   r   rU   rV   N)r   rE   ry   r   r   r   min)r9   rV   s   & r,   )test_date_range_near_implementation_bound8TestDateRanges.test_date_range_near_implementation_bound   s>    |]].6RSS9==!$? TSSSs   AA(	c                |   R p\         P                  ! \        VR7      ;_uu_ 4        \        R\        P
                  RR7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        \        P
                  RRR7       RRR4       R#   + '       g   i     L[; i  + '       g   i     R# ; i)z$Neither `start` nor `end` can be NaTrs   
2016-01-01rS   r   N)rE   ry   r   r   pdNaTr{   s   & r,   test_date_range_nat"TestDateRanges.test_date_range_nat   si    4]]:S11\rvvC@ 2]]:S11RVVC@ 21 21111s   B0B*B'	*B;	c                   \         P                  ! R 4      ;_uu_ 4        \        RRRR7      pR R R 4       X^ ,          \        R4      8X  g   Q h\	        V4      R8X  g   Q hRp\
        P                  ! \        VR7      ;_uu_ 4        \        RRR	R
7       R R R 4       R #   + '       g   i     Lz; i  + '       g   i     R # ; i)N
1677-09-22iA rS   rw   r   rs   z
1969-05-04i 30000DrT   )r   assert_produces_warningr   r   lenrE   ry   r   )r9   dtir|   s   &  r,   'test_date_range_multiplication_overflow6TestDateRanges.test_date_range_multiplication_overflow   s     ''--<cJC . 1v<00003x6!!!*]].c::|YXF ;: .- ;::s   B B3 B0	3C	c                    \        R RRR7      p\        V^ ,          \        V4      RR7      pVP                  V4      '       g   Q h\        VR,          \        V4      RR7      pVP                  V4      '       g   Q hR# )r   z
2262-04-11rS   r   rw   r   Nr#   )r   r   equals)r9   r   dti2dti3s   &   r,   *test_date_range_unsigned_overflow_handling9TestDateRanges.test_date_range_unsigned_overflow_handling   sh     |CHACsC{{3c"gs3xcB{{3r.   c           	     H   R p\         P                  ! \        VR7      ;_uu_ 4        \        RR	RRR7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        RR	RRR7       RRR4       R#   + '       g   i     LN; i  + '       g   i     R# ; i)
r   rs   
1970-02-01hr   rm   rU   rV   unitN
1969-11-14r   rU   rV   r   i ' rE   ry   r   r   r{   s   & r,   .test_date_range_int64_overflow_non_recoverable=TestDateRanges.test_date_range_int64_overflow_non_recoverable   sm     +]].c::\;StT ; ]].c::<3TR ;:	 ;: ;::   A=#B=B	B!	z
s_ts, e_tsc                    \        V4      p\        V4      p\        W4R R7      pV^ ,          V8X  g   Q hVR,          V8X  g   Q h\        V\        V4      R R7      p\        P                  ! We4       R# )z-1hr   r   Nr#   )r   r   r   r   r   )r9   s_tse_tsrm   r   expectedr   s   &&&    r,   >test_date_range_int64_overflow_stride_endpoint_different_signsMTestDateRanges.test_date_range_int64_overflow_stride_endpoint_different_signs   sf     $oE?{e###|s"""S#h-eD
c,r.   c           	     H   R p\         P                  ! \        VR7      ;_uu_ 4        \        RRRRR7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        RRRRR	7       RRR4       R#   + '       g   i     LN; i  + '       g   i     R# ; i)
zCannot generate rangers   r   i rS   r   rU   rV   r   Nz
1763-10-12r   r   r{   s   & r,   test_date_range_out_of_bounds,TestDateRanges.test_date_range_out_of_bounds  sg    %]].c::|V#DI ;]].c::<cM ;: ;::::r   c                F    \        R RRR7      p\        V4      ^8X  g   Q hR# )z1/1/2000 00:00z1/1/2000 00:185minrV   N)r   r   r9   r:   s   & r,   test_date_range_gen_error(TestDateRanges.test_date_range_gen_error  s"    )+;&I3x1}}r.   c                x   \         P                  ! 4       p^2p\        WRRR7      p\        ^4      p\	        \        V4       Uu. uF  qQWT,          ,           NK  	  upRVR7      p\        P                  ! W64       \        RVRRR7      p\        ^^4      pV F  pVP                  4       V8X  d   K  Q h	  R# u upi )	2   F2D)rU   	normalizerV   r   r   z1/1/2000 08:15BN)	r   todayr   r   r   r   r   r   r   )	r9   snapr   r:   offsetir   the_timevals	   &        r,   test_date_range_normalize(TestDateRanges.test_date_range_normalize  s    ~~EE1 (-a11AJ1
 	c,)1CP2;C88:)))  2s   B7c           	         \        R ^^^^^(4      p\        R ^^^^	^(4      pRp\        P                  ! \        VR7      ;_uu_ 4        \	        W^
RR7       RRR4       R#   + '       g   i     R# ; i)  VOf the four parameters: start, end, periods, and freq, exactly three must be specifiedrs   srT   N)r   rE   ry   r   r   r9   rm   r   r|   s   &   r,   #test_date_range_ambiguous_arguments2TestDateRanges.test_date_range_ambiguous_arguments-  sb    q!Q2.tQ1a,4 	 ]]:S11u2C8 2111s   A  A1	c           	     @   \        R R^VR7      p\        . RORV R2RR7      p\        P                  ! W#4       \        RRR	^VR
7      p\        \	        RR	R7      \	        RR	R7      \	        RR	R7      .4      P                  V4      p\        P                  ! W#4       R# )z
2018-04-24z
2018-04-27rU   r   M8[]Nr   z2018-04-01 01:00:00z2018-04-01 04:00:00zAustralia/Sydney)r6   rU   r   z2018-04-01 01:00:00+1100r5   z2018-04-01 02:00:00+1000z2018-04-01 04:00:00+1000)z2018-04-24 00:00:00z2018-04-25 12:00:00z2018-04-27 00:00:00)r   r   r   r   r   as_unitr9   r   resultr   s   &&  r,   #test_date_range_convenience_periods2TestDateRanges.test_date_range_convenience_periods9  s    L,M QvQ-
 	f/ !!!
 !49KL49KL49KL
 '$- 	 	f/r.   c                4   \        R ^RR7      p\        V4      P                  4       p\        P                  ! VP                  4       .4      P                  p\        P                  ! V.4      P                  p\        P                  ! \        RR7      ;_uu_ 4        W8H   RRR4       \        P                  ! \        RR7      ;_uu_ 4        W!8H   RRR4       \        . RO4      pW$8H  p\        P                  ! We4       \        . RO^ R7      pV^ ,          VR,          8H  p\        P                  ! We4       \        P                  ! . R	O. R
O. RO.4      pW8H  p\        P                  ! We4       R#   + '       g   i     L; i  + '       g   i     L; i)
2011-01-01r4   rU   r6   zUnable to coerce to Seriesrs   Nrn   )TTT)r"   rK   )TFF)FTF)FFT)r   r   to_framenparrayto_listTrE   ry   r   r   r   assert_frame_equalassert_series_equalassert_numpy_array_equal)r9   r:   dfarrarr2r   resultss   &      r,    test_date_range_index_comparison/TestDateRanges.test_date_range_index_comparisonU  s#   q\BC[!!#hh'))xx  ]]:-IJJI K ]]:-IJJI K /0*
g0,15Q%4:%
w188!#79MN
 *
##G6) KJ KJs   E4F4F	F	zstart,end,result_tz2018010120180103r4   i  r5   Nc                l    \        W^VR7      p\        R^RRR7      p\        P                  ! WE4       R# )   r   r  rS   r4   rU   rV   r6   Nr   r   r   )r9   rm   r   	result_tzr   r   s   &&&&  r,   test_date_range_linspacing_tz,TestDateRanges.test_date_range_linspacing_tzq  s0    ( Ei@j!#,O
f/r.   c                    R pRp\        WRR7      p\        W\        ^R7      R7      p\        P                  ! W44       R# )
2020-01-01z
2020-01-113Dr   )daysN)r   r   r   r   )r9   rm   r   rng1rng2s   &    r,   test_date_range_timedelta(TestDateRanges.test_date_range_timedelta  s7    %40%9!+<=
d)r.   c                <   R p\         P                  ! \        VR7      ;_uu_ 4        \        RR7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        RR7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        ^
R7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        RRR7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        RRR	7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        ^
RR
7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        4        RRR4       R#   + '       g   i     ELj; i  + '       g   i     ELE; i  + '       g   i     EL ; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)r   rs   ru   )rm   N)r   r   r   )rm   rV   )r   rV   rT   r   r{   s   & r,   test_range_misspecified&TestDateRanges.test_range_misspecified  s=   4 	
 ]]:S11Z( 2 ]]:S11:& 2 ]]:S11r" 2 ]]:S11Zc2 2 ]]:S11:C0 2 ]]:S11r, 2 ]]:S11L 21% 211 211 211 21 21 21 211sS   F F)F=GG$G7 H
F&	)F:	=G	G!	$G4	7H	
H	c                X    \        \        R 4      ^LRR7      p\        V4      ^L8X  g   Q hR# )z1960-04-01 00:00:00zQS-JANrT   N)r   r   r   )r9   r   s   & r,   test_compat_replace"TestDateRanges.test_compat_replace  s*     I&;<bxX6{b   r.   c           
        \         P                  ! ^R7      pRp\        P                  ! \        VR7      ;_uu_ 4        \        \        R^^4      \        R^^4      VR7       RRR4       R#   + '       g   i     R# ; i)r   )minutez4Offset <DateOffset: minute=5> did not increment daters   r   r   N)r   r   rE   ry   r   r   r   )r9   r   r|   s   &  r,   test_catch_infinite_loop'TestDateRanges.test_catch_infinite_loop  sU    ##1-D]]:S11xb"-xb"/EFS 2111s   %A--A>	c                   \        R 4      P                  RRR7      p\        R 4      P                  RRR7      p\        RRR7      VV.p\        VRR7      P                  V4      p\	        R	^RRVR
7      p\
        P                  ! We4       R# )z2010-11-07 01:00:00
US/PacificT)	ambiguousFz2010-11-07 00:00:00r5   r   r   z	2010-11-7)rm   rU   rV   r6   r   N)r   tz_localizer   r   r   r   r   )r9   r   pre_dstpst_dstexpect_datar   r   s   &&     r,   test_construct_over_dst&TestDateRanges.test_construct_over_dst  s    12>>D ? 
 12>>E ? 
 +=

 !37??Eqs|$
 	f/r.   c                    \        R RRVR7      p\        \        R 4      \        R4      \        R4      .RR7      P                  V4      p\        P
                  ! W#4       R# )z2013-01-01 00:00:00+09:00z2013/01/01 02:00:00+09:00r   rV   r   z2013-01-01 01:00:00+09:00z2013-01-01 02:00:00+09:00r   N)r   r   r   r   r   r   r   s   &&  r,   5test_construct_with_different_start_end_string_formatDTestDateRanges.test_construct_with_different_start_end_string_format  sg    ''	
 !565656
 
 '$- 	 	f/r.   c           	         R p\         P                  ! \        VR7      ;_uu_ 4        \        RR\	        ^ 4      R7       RRR4       R#   + '       g   i     R# ; i)z.Offset <0 \* MonthEnds> did not increment daters   ru   z1/1/2001r   N)rE   ry   r   r   r	   r{   s   & r,   test_error_with_zero_monthends-TestDateRanges.test_error_with_zero_monthends  s7    ?]]:S11z:HQK@ 2111s   A		A	c                    \        ^R7      p\        RRW!R7      p\        R^^4      p\        \	        ^4       Uu. uF  qTWR,          ,           NK  	  upRV R2VR7      p\
        P                  ! W64       R	# u upi )
r
  )months2011-1-1z	2012-1-31r,  r   r   r   r   N)r   r   r   r   r   r   r   )r9   r   r   r   rm   r   r   s   &&     r,   test_range_bugTestDateRanges.test_range_bug  sq    1%J&Lq!$ ).q2AQZ2CvQ-f
 	f/ 3s   A7c                   \         P                  ! R 4      pVP                  R4      pVP                  \	        R^^4      4      pVP                  \	        R^^4      4      p\        V^R7      pVP                  P                  VP                  8X  g   Q hV^ ,          V8X  g   Q hV^,          V8X  g   Q h\        V^R7      pVP                  P                  VP                  8X  g   Q hV^ ,          V8X  g   Q hV^,          V8X  g   Q h\        W4R7      pVP                  P                  VP                  8X  g   Q hV^ ,          V8X  g   Q hV^,          V8X  g   Q hR# )rD   r4   r   rm   rU   r   rU   rm   r   N)rE   rF   rG   localizer   r   r6   zone)r9   rD   r6   rm   r   drs   &     r,   test_range_tz_pytz!TestDateRanges.test_range_tz_pytz  s   ""6*]]<(HT1a01kk(4A./eQ/uuzzRWW$$$!u~~!u||C+uuzzRWW$$$!u~~!u||e-uuzzRWW$$$!u~~!u||r.   z
start, endrR   i  c                   \         P                  ! R 4      pVP                  R4      p\        WR7      p\        W$R7      p\	        WRR7      pV^ ,          V8X  g   Q hVR,          V8X  g   Q h\
        P                  ! VP                  ^ 8H  4      '       g   Q h\	        WRVR7      pV^ ,          V8X  g   Q hVR,          V8X  g   Q h\
        P                  ! VP                  ^ 8H  4      '       g   Q h\	        VP                  RR7      VP                  RR7      RVR7      pV^ ,          V8X  g   Q hVR,          V8X  g   Q h\
        P                  ! VP                  ^ 8H  4      '       g   Q hR# )	rD   r4   r5   rS   r   rV   r6   Ntzinfor#   )	rE   rF   rG   r   r   r   allhourreplace)r9   rm   r   rD   r6   r=  s   &&&   r,   test_range_tz_dst_straddle_pytz.TestDateRanges.test_range_tz_dst_straddle_pytz  s5    ""6*]]<(%'#-!u~~"v}}vvbggl####4!u~~"v}}vvbggl####MMM&KKtK$	
 !u~~"v}}vvbggl####r.   c                  a ^ RI Ho V3R lp\        R^^V! R4      R7      p\        R^^V! R4      R7      p\        V^R7      pVP                  V! R4      8X  g   Q hV^ ,          V8X  g   Q hV^,          V8X  g   Q h\        V^R7      pVP                  V! R4      8X  g   Q hV^ ,          V8X  g   Q hV^,          V8X  g   Q h\        W#R7      pVP                  V! R4      8X  g   Q hV^ ,          V8X  g   Q hV^,          V8X  g   Q hR	# )
rK   )maybe_get_tzc                 "   < S! R V ,           4      # )z	dateutil/r$   )xrJ  s   &r,   <lambda>7TestDateRanges.test_range_tz_dateutil.<locals>.<lambda>*  s    |K!O4r.   r   r4   rB  r8  r9  r:  N)rM   rJ  r   r   r6   )r9   r6   rm   r   r=  rJ  s   &    @r,   test_range_tz_dateutil%TestDateRanges.test_range_tz_dateutil$  s     	?4q!B|,<=tQ"\*:;eQ/uu<((((!u~~!u||C+uu<((((!u~~!u||e-uu<((((!u~~!u||r.   r6   c                    \        R VR7      p\        RVR7      p\        WEW1R7      p\        WERVR7      p\        WEWs4      p\        P                  ! W4       R# )2011/1/1r5   2014/1/1)	inclusiverV   r!   Nr   r   r-   r   r   )	r9   rV   r6   inclusive_endpoints_fixturebeginr   result_ranger'   r+   s	   &&&&     r,   test_range_closed TestDateRanges.test_range_closed>  s[    
 *,
r*!"=
  f4H
,

 	n;r.   c                    \        R 4      p\        R4      p\        R RR7      p\        RRR7      p\        VVVVRR7      p\        W4RVRR7      p\        VVVV4      p	\        P                  ! W4       R# )rR  rS  r4   r5   )rT  rV   r6   r!   NrU  )
r9   rV   rV  rW  r   begintzendtzrX  r'   r+   s
   &&&       r,   1test_range_with_tz_closed_with_tz_aware_start_end@TestDateRanges.test_range_with_tz_closed_with_tz_aware_start_endP  s     *%
#J<8*6!1
  &t

 -'	
 	n;r.   c                   \        R RRVR7      p\        RR RVR7      p\        RRRVR7      p\        RR RVR7      pTpTpTpVR8X  d   VR,          pM"VR8X  d   VR	R pMVR
8X  d   VR,          pVR	R pV^R p	\        P                  ! W&4       \        P                  ! W74       \        P                  ! WH4       \        P                  ! WY4       R	# )z
2015-09-12z
2015-12-01zQS-MARrV   rT  z
2015-09-01z
2015-09-11r   r   r   Nr!   r#   r  )
r9   rV  right_boundaryleft_boundaryboth_boundaryneither_boundaryexpected_rightexpected_leftexpected_bothexpected_neithers
   &&        r,   test_range_closed_boundary)TestDateRanges.test_range_closed_boundaryl  s    #1	
 #1	
 #1	
 &1	
 '%%&'1)"-M(F2*3B/N(F2*2.N)#2.M(2.
n=
m;
m;
.Ar.   c                   Tp\        R RRVR7      p\        RRRVR7      p\        P                  ! W44       \        R RRVR7      p\        RRRVR7      p\        P                  ! WV4       \        R R	R
VR7      p\        RRR
VR7      p\        P                  ! Wx4       \        R R	RVR7      p	\        RRRVR7      p
\        P                  ! W4       R# )20142015MErA  z
2014-01-31
2014-12-31MS
2014-01-01
2015-01-012020rk   z
2019-12-31YSr  Nr  )r9   tz_naive_fixturer6   r  	expected1r  	expected2rng3	expected3rng4	expected4s   &&         r,   test_date_range_years_only)TestDateRanges.test_date_range_years_only  s    &&t;|\L	
d.&&t;|\L	
d.&&t;|\L	
d.&&t;|\L	
d.r.   c                    \        R RRR7      p\        RRRR7      p\        RR.RRR	R
7      p\        RR.RRR	R
7      p\        P                  ! W4       \        P                  ! W$4       R	# )z2005-01-12 10:00z2005-01-12 16:00345minr   z2005-01-13 10:00z2005-01-13 16:00z2005-01-12 10:00:00z2005-01-12 15:45:00datetime64[us]Nr   rV   r6   z2005-01-13 10:00:00z2005-01-13 15:45:00r   r   r   r   )r9   result_1result_2
expected_1
expected_2s   &    r,   test_freq_divides_end_in_nanos-TestDateRanges.test_freq_divides_end_in_nanos  sz    02D8T02D8T""$9:"	

 #"$9:"	

 	h3
h3r.   c                    \        R ^2\        ^R7      R7      p\        V4      ^28X  g   Q hV^ ,          \        R^	^^4      8X  g   Q hR# )z2010-09-01 05:00:00hoursrT   r   N)r   r   r   r   r   s   & r,   test_cached_range_bug$TestDateRanges.test_cached_range_bug  sD    .RSATU3x2~~1v$1a0000r.   c                `    \        R RR7      p\        V^RR7      p\        V4      ^8X  g   Q hR# )20130220 10:00r4   r5   r   N)r   r   r   )r9   rm   r   s   &  r,   test_timezone_comparison_bug+TestDateRanges.test_timezone_comparison_bug  s/    *|<E1>6{ar.   c                    \        R RR7      pRp\        P                  ! \        VR7      ;_uu_ 4        \	        V^RR7       RRR4       R#   + '       g   i     R# ; i)r  r4   r5   z0Inferred time zone not equal to passed time zoners   zEurope/Berlinr   N)r   rE   ry   AssertionErrorr   )r9   rm   r|   s   &  r,   test_timezone_comparison_assert.TestDateRanges.test_timezone_comparison_assert  s@    *|<@]]>55uaO< 6555s   AA	c                    Tp\        R RRVR7      p\        R RRVR7      RRR1,          p\        P                  ! W44       R# )z
2011-06-01r   z-1MS)rm   r   rV   r6   1MS)r   rm   rV   r6   Nr#   r  )r9   tz_aware_fixturer6   r   r   s   &&   r,   1test_negative_non_tick_frequency_descending_dates@TestDateRanges.test_negative_non_tick_frequency_descending_dates  sE    ,LvRTU,lSUVbD
 	f/r.   c                    R pR p\        W#RVR7      p\        W#RRR7      pVR8X  d   V^R pMVR9   d
   VR,          p\        P                  ! VX4       R# )	z
2021-09-02rS   )rm   r   rV   rT  r!   r    r"   Nr#   )r   r   r!   r  )r9   rV  rm   r   r   r'   r   s   &&     r,    test_range_where_start_equal_end/TestDateRanges.test_range_where_start_equal_end  sd    s6Q
  e3&Q
&)3!!B'H(,EE!!}H
fh/r.   c                    \        ^
^9^R7      p\        R^
VRR7      p\        . RORR7      p\        P                  ! W#4       R# )
   )r  r  nanosecondsz1970-01-01 00:00:00a)r   rU   rV   rn   r   N)
z1968-08-02T05:59:59.999999973z1968-09-28T15:59:59.999999976z1968-11-25T01:59:59.999999979z1969-01-21T11:59:59.999999982z1969-03-19T21:59:59.999999985z1969-05-16T07:59:59.999999988z1969-07-12T17:59:59.999999991z1969-09-08T03:59:59.999999994z1969-11-04T13:59:59.999999997z1970-01-01T00:00:00.000000000)r   r   r   r   r   )r9   rV   r   r   s   &   r,   .test_freq_dateoffset_with_relateivedelta_nanos=TestDateRanges.test_freq_dateoffset_with_relateivedelta_nanos  sF    ; 5rSVW  
 	f/r.   c                    R V 2p\         P                  ! \        VR7      ;_uu_ 4        \        R^VR7       RRR4       R#   + '       g   i     R# ; ir   r   r   s   && r,   !test_frequency_H_T_S_L_U_N_raises0TestDateRanges.test_frequency_H_T_S_L_U_N_raises  s:    #D6*]]:S11z148 2111r   	freq_deprc                    R V 2p\         P                  ! \        VR7      ;_uu_ 4        \        R^VR7       RRR4       R#   + '       g   i     R# ; ir   r   )r9   r  r|   s   && r,   test_frequency_raises$TestDateRanges.test_frequency_raises  s<     $I;/]]:S11z19= 2111r   c                    \        R ^^4      p\        VR^R7      p\        V4      ^8X  g   Q hV^ ,          V^ \        P                  ! 4       ,          ,           8X  g   Q hVP
                  R8X  g   Q hR# )  1B)rm   rV   rU   r   N)r   r   r   r   r   rV   )r9   sdatero   s   &  r,   test_date_range_bday#TestDateRanges.test_date_range_bday  s`    r2&u4<3x2~~1vW\\^!33333xx3r.   200Az2A-MAYc                    \         P                  ! R V^R7      ^,          pRV 2p\        P                  ! \        VR7      ;_uu_ 4        \        R^VR7       RRR4       R#   + '       g   i     R# ; i)z[0-9]*)maxsplitr   rs   ru   rT   N)resplitrE   ry   r   r   )r9   rV   freq_msgr|   s   &&  r,   test_frequency_A_raises&TestDateRanges.test_frequency_A_raises  sQ    88HdQ7:#H:.]]:S11z148 2111s   
A##A4	zfreq,freq_deprc                   R VR,           R2p\        R^VR7      p\        P                  ! \        VR7      ;_uu_ 4        \        R^VR7      pRRR4       \        P                  ! XV4       R#   + '       g   i     L); i)'r   z8' is deprecated and will be removed in a future version.ru   rT   rs   N)r   r   r   r   r   )r9   rV   r  depr_msgr   r   s   &&&   r,   (test_date_range_depr_lowercase_frequency7TestDateRanges.test_date_range_depr_lowercase_frequency  sk     	"VW 	 j!$?''hGG
AIFF H
fh/ HGs    A00B 	zfreq_removed,freqc                    R V 2p\         P                  ! \        VR7      ;_uu_ 4        \        R^VR7       RRR4       R#   + '       g   i     R# ; i)zDid you mean rs   ru   rT   Nr   )r9   rV   freq_removedr|   s   &&& r,   9test_error_message_for_removed_year_yearbegin_frequenciesHTestDateRanges.test_error_message_for_removed_year_yearbegin_frequencies2  s<     dV$]]:S11z1<@ 2111r   r$   )2M1m2SM2BQ1bq2BY)r   usmsr   r   r   rS   )z
2262-02-23r   )r   z
1677-10-22)r  r  r4   )1Dr  2ME7W3hrk   )2T2L1l1U2N2n)mbmCBMSMBQzq-febzy-mayzY-MAY))2W2w)z2W-WEDz2w-wed)2B2b)r   2d)2C2c))100AY)z2A-DECzY-DEC)100ASru  )z2AS-MAYzYS-MAY);r^   r_   r`   ra   rp   r}   r   rE   markparametrizer   r   r   r   r   r   r   r   slowr   r   r   r   r   r   r  r   r   r  r  r  r  r   r)  r-  r0  r5  r>  rG  rO  rY  r^  rj  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  rd   re   rf   s   @r,   ri   ri      s    "B
1
 [[V%MN9 O9= [[V%MN"( O"(H@AG
 	S [[[[35QR- -N*$
90878 [[2dAq!8D!Q#7Fz"Ij$9<H*6*6 *6*6	
$0%$0*8!T0&0$A
	0, [[dAq!8D!R#89dB"HT2q$9:	
$$24 [[V%JK[[TD,#78< 9 L<  [[V%JK< L<6,B\/&4&1
 =00 0* [[V%IJ9 K9
 [[N>> [[Vfh%789 99 [[	
		0		0 [[	
AAr.   ri   c                     a  ] tR tRt o RtR t]P                  P                  RRR.4      R 4       t	]P                  P                  RRR.4      R 4       t
R	 tR
 t]P                  P                  RRR.4      R 4       t]P                  P                  RRR.4      R 4       t]P                  P                  R. RO. RO. RO. ROR]! ^R7      R..4      R 4       tRtV tR# )TestDateRangeTZiC  z#Tests for date_range with timezonesc                <    \        R RRRR7      pVP                   R# )z
2012-01-01z
2012-01-10rS   HongkongrA  N)r   rE  )r9   r=  s   & r,   test_hongkong_tz_convert(TestDateRangeTZ.test_hongkong_tz_convertF  s    lL 	r.   tzstrr4   r@   c                   \        R ^RRR7      pVP                  ^ 8H  P                  4       '       g   Q h\        R^
VR7      pVP                  p\        P                  ! ^ .^
,          RR7      p\
        P                  ! W44       R# )	z03/06/2012 00:00zW-FRIr4   r  z
2012-11-02r   int32r   N)r   rE  rD  r   Indexr   r   )r9   r  r=  r   r   s   &&   r,   #test_date_range_span_dst_transition3TestDateRangeTZ.test_date_range_span_dst_transitionM  sm    
 *Cg,W1!!####bU;88QC"HG4
f/r.   c                    \         P                  ! V4      p\        R ^
VR7      p\        R ^
VR7      p\        P                  ! W44       R# )ru   r   N)r   rJ  r   r   r   )r9   r  r6   r   r   s   &&   r,   %test_date_range_timezone_str_argument5TestDateRangeTZ.test_date_range_timezone_str_argument[  s<    ##E*Ju=j"<
f/r.   c           
     r   \        R R4      p\        R^^^^ ^ VR7      p\        R^^^^ ^ VR7      p\        W#R7      pWP                  8X  g   Q h\        V\	        V4      VR7      p\
        P                  ! WE4       \        RR4      pVP                  VP                  8H  P                  4       '       g   Q hR# )	i  z+07:00  rB  r:  r   z3/11/2012 05:00:00+07:00z6/11/2012 05:00:00+07:00N)	r   r   r   r6   r   r   r   valuesrD  )r9   offrm   r   r:   r  ry  s   &      r,   test_date_range_with_fixed_tz-TestDateRangeTZ.test_date_range_with_fixed_tzc  s    #x(q"aAc:tQAq!C8u.ff}}%Sc:
c(46PQ

dkk)..0000r.   c           
         \         p\        R ^^^^ ^ VR7      p\        R ^^^^ ^ VR7      p\        W#R7      pWP                  8X  g   Q h\        P
                  ! W#.4      pWP                  8X  g   Q hR# )r  rB  r:  N)r   r   r   r6   r   r  )r9   r  rm   r   r:   ro   s   &     r,   'test_date_range_with_fixedoffset_noname7TestDateRangeTZ.test_date_range_with_fixedoffset_nonamep  si    q"aAc:tQAq!C8u.ff}}hh|$ff}}r.   c                    \        R VR7      pVP                  ^8X  g   Q h\        R^
RVR7      pW#^,          8X  g   Q hR# )z3/11/2012 05:00r5   z3/11/2012 04:00r   r  N)r   rE  r   )r9   r  r;   r:   s   &&  r,   test_date_range_with_tz'TestDateRangeTZ.test_date_range_with_tzz  s>    +6zzQ*BSUKAr.   r6   Europe/Londonzdateutil/Europe/Londonc           	     0   \         P                  ! \        R R7      ;_uu_ 4        \        RRRRR7       RRR4       \        RRRVRR	7      pV^ ,          \	        RVR
7      8X  g   Q hVR,          \	        RVR
7      8X  g   Q hR#   + '       g   i     LX; i)zCannot infer dst timers   z2013-10-26 23:00z2013-10-27 01:00r  r   r6   rV   NinferrV   r6   r$  r5   z2013-10-27 01:00:00+0000r#   rE   ry   r   r   r   )r9   r6   timess   && r,   "test_date_range_ambiguous_endpoint2TestDateRangeTZ.test_date_range_ambiguous_endpoint  s    
 ]]:-DEE"$6?QT F
  2w
 Qx9%7B????RyI&@RHHHH FEs   BB	ztz, option, expectedr#  2019-03-10 03:00r  c           	         \         P                  ! \        R R7      ;_uu_ 4        \        RRRRR7       RRR4       \        RRRWR7      pVR
,          \	        W1R	7      8X  g   Q hR#   + '       g   i     L;; i)z2019-03-10 02:00:00rs   z2019-03-10 00:00z2019-03-10 02:00r#  r   r  N)rV   r6   nonexistentr5   r#   r  )r9   r6   optionr   r	  s   &&&& r,   $test_date_range_nonexistent_endpoint4TestDateRangeTZ.test_date_range_nonexistent_endpoint  sg     ]]:-BCC"$6<c D
  2
 RyIh6666 DCs   A((A8	r$   N)r#  shift_forwardr  )dateutil/US/Pacificr  r  )r#  shift_backward2019-03-10 01:00)r  r  r  )r^   r_   r`   ra   __doc__r  rE   r  r  r  r  r  r  r  r
  r   r  rd   re   rf   s   @r,   r  r  C  s    - [[W|5J&KL0 M0 [[W|5J&KL0 M01 [[W|5J&KL M [[TO5M#NOI PI [[?H@I91-/AB	
	7	7r.   r  c                     a  ] tR tRt o ]P
                  P                  RR]! 4       3R]! 4       3.4      R 4       t	R t
R tR tR	 tR
R
uttRRutt]P
                  P                  R]! ]]R7      ]! ]4      3]! ]4      ]! ]]R7      3]! ]]R7      ]! ]]R7      3]! ]]R7      ]! ]]R7      3.4      R 4       tRtV tR# )TestGenRangeGenerationi  freqstr,offsetr   Cc           
         \        \        \        \        R VRR7      4      p\        \        \        \        R VRR7      4      pW48X  g   Q hR # )Nr   )rU   r   r   )listgenerate_rangeSTARTEND)r9   freqstrr   r  r  s   &&&  r,   test_generate$TestGenRangeGeneration.test_generate  s>     N5#tFQUVWN5#tGRVWX||r.   c           
         \        \        \        R ^^4      R^\        4       RR7      4      p\        R ^^4      \        R ^^4      .pW8X  g   Q hR# )r   Nr   rm   r   rU   r   r   r  r  r   r   r9   r:   r   s   &  r,   test_1TestGenRangeGeneration.test_1  sV    tQ+v
 T1b)8D!R+@Ar.   c           
         \        \        \        R ^^4      \        R ^^4      R\        4       RR7      4      p\        R ^^4      \        R ^^4      \        R ^^4      .pW8X  g   Q hR#   Nr   r$  r%  r&  s   &  r,   test_2TestGenRangeGeneration.test_2  sk    tQ*T1a(v
 T1a((4A*>qRS@TUr.   c           
         \        \        \        R ^^4      \        R ^^4      R\        4       RR7      4      p. pW8X  g   Q hR# r*  r%  r&  s   &  r,   test_3TestGenRangeGeneration.test_3  sH    tQ*T1a(v
 r.   c                    \        R RRR7      p\        R RRR7      p. ROp. ROp\        VRRRR	7      p\        VRR
RR	7      p\        P                  ! W4       \        P                  ! W&4       R# )z2015-04-15 00:00:03z2016-04-22 00:00:00QEr   z2015-06-22 00:00:04Wr  zQE-DECNr  W-SUN)z2015-06-30 00:00:03z2015-09-30 00:00:03z2015-12-31 00:00:03z2016-03-31 00:00:03)
z2015-04-19 00:00:03z2015-04-26 00:00:03z2015-05-03 00:00:03z2015-05-10 00:00:03z2015-05-17 00:00:03z2015-05-24 00:00:03z2015-05-31 00:00:03z2015-06-07 00:00:03z2015-06-14 00:00:03z2015-06-21 00:00:03r  )r9   result1result2expected1_listexpected2_listrw  rx  s   &      r,    test_precision_finer_than_offset7TestGenRangeGeneration.test_precision_finer_than_offset  s    '-B
 '-B


 ""2d
	 ""2T
	 	g1
g1r.   
2017-01-01r4   r  z	start,endr5   c                L   R p\         P                  ! \        VR7      ;_uu_ 4        \        W4       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \        W\	        4       R7       RRR4       R#   + '       g   i     LT; i  + '       g   i     R# ; i)z>Start and end cannot both be tz-aware with different timezonesrs   Nr   )rE   ry   rz   r   r   r   s   &&& r,   test_mismatching_tz_raises_err5TestGenRangeGeneration.test_mismatching_tz_raises_err  s`     O]]9C00u" 1]]9C00u/ 10 10000s   A?B?B	B#	r$   N)r^   r_   r`   ra   rE   r  r  r   r   r!  r'  r,  r/  r9  dt1dt2tz1tz2r   r=  rd   re   rf   s   @r,   r  r    s     [[$&M$&M	

!2F \HC_HC[[ss#Ys^4s^Yss34ss#Yss%;<ss#Yss%;<		
00r.   r  c                   J   a  ] tR tRt o R tR tR tR tR tR t	R t
R	tV tR
# )TestBusinessDateRangei  c           	        \        \        \        \        4       R 7       \        \        ^\        4       R7       \        \        ^\        4       R7       Rp\        P
                  ! \        VR7      ;_uu_ 4        \        RRR4       RRR4       \        P
                  ! \        VR7      ;_uu_ 4        \        RRR4       RRR4       R	p\        P
                  ! \        VR7      ;_uu_ 4        \        \        \        ^
RR7       RRR4       R#   + '       g   i     L; i  + '       g   i     Lk; i  + '       g   i     R# ; i)
r   rT   r   z!periods must be an integer, got Brs   r4  2012-1-1r   Nz>freq must be specified for bdate_range; use date_range instead)r   r  r  r   rE   ry   rz   r   r{   s   & r,   test_constructor&TestBusinessDateRange.test_constructor  s    E3TV,E2DF3r71]]9C00z:s3 1 ]]9C00
J4 1 O]]9C00sBT: 10 10 10 100s$   9D3D$/D7D!	$D4	7E	c                    \        R ^^4      p\        V^R7      pV^\        4       ,          ,
          p\        V4      ^8X  g   Q hV^ ,          V8X  g   Q hVR,          V8X  g   Q hR# )r   r9  Nr#   )r   r   r   r   r9   r   r=  	firstDates   &   r,   	test_miscTestBusinessDateRange.test_misc(  s^    tQ#S"-"tv+%	2w"}}!u	!!!"v}}r.   c                p   R pRp\         P                  ! \        VR7      ;_uu_ 4        \        V4       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \	        V^
R7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \	        V^
R7       RRR4       \         P                  ! \        VR7      ;_uu_ 4        \	        W4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Lp; i  + '       g   i     R# ; i)z
2007/100/1z;Unknown datetime string format, unable to parse: 2007/100/1rs   Nr8  r9  )rE   ry   r   r   r   )r9   badly_formed_dater|   s   &  r,   test_date_parse_failure-TestBusinessDateRange.test_date_parse_failure1  s    (K]]:S11'( 2 ]]:S11/< 2 ]]:S11-r: 2 ]]:S11)= 21 21 21 21 211s/   C+!C>DD$+C;	>D	D!	$D5	c                    \        R R 4      p\        RR 4      pVP                  P                  \        4       8X  g   Q hVP	                  V4      p\        V\        4      '       g   Q hR# )	12/5/2011	12/2/2011N)r   _datarV   r   union
isinstancer   r9   r  r  r   s   &   r,   test_daterange_bug_456,TestBusinessDateRange.test_daterange_bug_456A  sS    ;4;4zz$&(((D!&-0000r.   c                x    R pRp\        W#RVR7      pRpRp\        WVRR7      p\        P                  ! WG4       R# )	z
2018-07-21z
2018-07-29r   ra  z
2018-07-23z
2018-07-27rS   r   Nr  )r9   rV  rm   r   r   
bday_startbday_endr   s   &&      r,   test_bdays_and_open_boundaries4TestBusinessDateRange.test_bdays_and_open_boundariesJ  s?    ES<WX!
j=
f/r.   c                    \         P                  P                  R 4      P                  4       p\	        VR^RR7      p\        V.RR7      p\        P                  ! W#4       R# )rS   Nr   r   r   )r   maxfloorto_pydatetimer   r   r   r   )r9   rm   r:   r   s   &   r,   test_bday_near_overflow-TestBusinessDateRange.test_bday_near_overflowV  sK    ##C(668D!#> %s3
c,r.   c           	        R p\         P                  P                  R4      P                  4       p\        P
                  ! \        VR7      ;_uu_ 4        \        V^RRR7       RRR4       R#   + '       g   i     R# ; i)z"Out of bounds nanosecond timestamprS   rs   r   r   r   N)r   ra  rb  rc  rE   ry   r   r   )r9   r|   rm   s   &  r,   test_bday_overflow_error.TestBusinessDateRange.test_bday_overflow_error]  sS    2##C(668]].c::uac= ;:::s   A..A?	r$   N)r^   r_   r`   ra   rG  rL  rP  rY  r^  rd  rg  rd   re   rf   s   @r,   rD  rD    s-     ; > 1	0-> >r.   rD  c            	         a ] tR tRt oR tR tR tR tR tR t	R t
R	 t]P                  P                  R
] U u. uF+  q P!                  4       P#                  R4      '       g   K)  V NK-  	  up 4      R 4       t]P                  P                  R. RO4      R 4       t]P                  P                  RR^R.3R^R.3R^RR.3.4      R 4       tR tR tR tRtVtR# u up i )TestCustomDateRangeie  c                   \        \        \        \        4       R 7       \        \        ^\        4       R7       \        \        ^\        4       R7       Rp\        P
                  ! \        VR7      ;_uu_ 4        \        RRR4       RRR4       \        P
                  ! \        VR7      ;_uu_ 4        \        RRR4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; i)	r   rT   r   z!periods must be an integer, got Crs   r4  rF  r  N)r   r  r  r   rE   ry   rz   r   r{   s   & r,   rG  $TestCustomDateRange.test_constructorf  s    E3TV,E2DF3r71]]9C00z:s3 1 ]]9C00
J4 10 10 100s   9C3CC	C/	c                    \        R ^^4      p\        V^RR7      pV^\        4       ,          ,
          p\        V4      ^8X  g   Q hV^ ,          V8X  g   Q hVR,          V8X  g   Q hR# )r   r  r   Nr#   )r   r   r   r   rJ  s   &   r,   rL  TestCustomDateRange.test_miscr  s`    tQ#S"37"tv+%	2w"}}!u	!!!"v}}r.   c                    \        R R RR7      p\        RR RR7      pVP                  P                  \        4       8X  g   Q hVP	                  V4      p\        V\        4      '       g   Q hR# )rS  r  r   rT  N)r   rU  rV   r   rV  rW  r   rX  s   &   r,   rY  *TestCustomDateRange.test_daterange_bug_456{  sW    ;#>;#>zz$&(((D!&-0000r.   c                    \        R ^RVR7      p\        . RORV R2RR7      p\        P                  ! W#4       VP                  VP                  8X  g   Q hR# )
2013-05-01r  r   r   r   r   N)rr  
2013-05-02
2013-05-03)r   r   r   r   rV   r   s   &&  r,   test_cdaterange#TestCustomDateRange.test_cdaterange  sR    \13TJ 6D6mRU
 	f/{{hmm+++r.   c                j   \        R ^RRVR7      p\        . RORV R2VP                  R7      p\        P                  ! W#4       VP                  VP                  8X  g   Q hRp\
        P                  ! \        VR7      ;_uu_ 4        \        R ^RR	7       R
R
R
4       R
#   + '       g   i     R
# ; i)rr  r  Sun Mon Tue Wed Thu)rU   rV   weekmaskr   r   r   r   [a custom frequency string is required when holidays or weekmask are passed, got frequency Brs   )rU   ry  N)rr  rs  
2013-05-05r   r   rV   r   r   rE   ry   r   r9   r   r   r   r|   s   &&   r,   test_cdaterange_weekmask,TestCustomDateRange.test_cdaterange_weekmask  s    !#8MTX
 !6vQ-

 	f/{{hmm+++3 	 ]]:S11a:OP 2111s   B!!B2	c                n   \        R ^RR .VR7      p\        . R
ORV R2VP                  R7      p\        P                  ! W#4       VP                  VP                  8X  g   Q hRp\
        P                  ! \        VR7      ;_uu_ 4        \        R ^R .R7       R	R	R	4       R	#   + '       g   i     R	# ; i)rr  r  )rU   rV   holidaysr   r   r   r   rz  rs   )rU   r  N)rs  rt  
2013-05-06r|  r}  s   &&   r,   test_cdaterange_holidays,TestCustomDateRange.test_cdaterange_holidays  s    !#T
 !6vQ-

 	f/{{hmm+++3 	 ]]:S11a<.I 2111s   	B##B4	c           	         \        R ^RRR .VR7      p\        . RORV R2VP                  R7      p\        P                  ! W#4       VP                  VP                  8X  g   Q hR# )	rr  r  rx  )rU   rV   ry  r  r   r   r   r   N)rs  r{  r  )r   r   rV   r   r   r   s   &&  r,   %test_cdaterange_weekmask_and_holidays9TestCustomDateRange.test_cdaterange_weekmask_and_holidays  sg    *"^
 !6vQ-

 	f/{{hmm+++r.   c           	         R p\         P                  ! \        VR7      ;_uu_ 4        \        R^RR.R7       RRR4       R#   + '       g   i     R# ; i)rz  rs   rr  rx  )rU   ry  r  N)rE   ry   r   r   r{   s   & r,   2test_cdaterange_holidays_weekmask_requires_freqstrFTestCustomDateRange.test_cdaterange_holidays_weekmask_requires_freqstr  sD    3 	 ]]:S11.&	 2111s   AA	rV   r  c                   \        \        \        VR R.R7       VR,           pRV 2p\        P                  ! \
        VR7      ;_uu_ 4        \        \        \        VR7       RRR4       R#   + '       g   i     R# ; i)Mon Wed Fri
2009-03-14rV   ry  r  FOOz!invalid custom frequency string: rs   r   N)r   r  r  rE   ry   r   )r9   rV   bad_freqr|   s   &&  r,   test_all_custom_freq(TestCustomDateRange.test_all_custom_freq  s\    
 	3TM\N	
 %<1(<]]:S11s2 2111s   A--A>		start_endc                r    Vw  r#\        W#^RR7      p\        V.RR7      p\        P                  ! WE4       R# )   r   )rm   r   rU   rT  zM8[us, UTC]r  Nr  )r9   r  rm   r   r   r   s   &&    r,   &test_range_with_millisecond_resolution:TestCustomDateRange.test_range_with_millisecond_resolution  s5     
%!vN %>
f/r.   zstart,period,expectedz2022-07-23 00:00:00+02:00z2022-07-25 00:00:00+02:00z2022-07-22 00:00:00+02:00c                    \        WR R7      p\        V4      P                  R4      p\        P                  ! WC4       R# )r  rw   r  N)r   r   r   r   r   )r9   rm   periodr   r   s   &&&& r,   .test_range_with_timezone_and_custombusinessdayBTestCustomDateRange.test_range_with_timezone_and_custombusinessday  s3     %cB *2248
f/r.   c                    \         P                  ! R R7      p\        R^^^4      p\        R^^^4      p\        W4W!R7      p\	        . RORV R2R7      p\
        P                  ! WV4       R# )	zSun Mon Tue)ry  i  r,  r   r   r  N)z2024-02-06 23:00:00z2024-02-11 23:00:00z2024-02-12 23:00:00z2024-02-13 23:00:00)r   CustomBusinessDayr   r   r   r   r   )r9   r   r   rm   r   r   r   s   &&     r,   .test_data_range_custombusinessday_partial_timeBTestCustomDateRange.test_data_range_custombusinessday_partial_time  sj    **MBq!R(tQB'EV?  vQ-
 	f/r.   c                t    \        R RRRR.R7      p\        . R	ORRR7      p\        P                  ! W4       R# )
z
2009-03-13z
2009-03-15cbhr  r  r  r  r   N)z2009-03-13 09:00:00z2009-03-13 10:00:00z2009-03-13 11:00:00z2009-03-13 12:00:00z2009-03-13 13:00:00z2009-03-13 14:00:00z2009-03-13 15:00:00z2009-03-13 16:00:00)r   r   r   r   )r9   r   r   s   &  r,   test_cdaterange_cbh'TestCustomDateRange.test_cdaterange_cbh  sF    ""^
 !	 #
 	f/r.   c           
         R p\         P                  ! \        VR7      ;_uu_ 4        \        \        \
        RRR.R7       RRR4       R#   + '       g   i     R# ; i)z7invalid custom frequency string: CBH, did you mean cbh?rs   CBHr  r  r  N)rE   ry   r   r   r  r  r{   s   & r,   $test_cdaterange_deprecated_error_CBH8TestCustomDateRange.test_cdaterange_deprecated_error_CBH-  s<    G]]:S11s, 2111s   AA	r$   N))z2018-01-01T00:00:01.000Zz2018-01-03T00:00:01.000Z)z2018-01-01T00:00:00.010Zz2018-01-03T00:00:00.010Z)z2001-01-01T00:00:00.010Zz2001-01-03T00:00:00.010Z)r^   r_   r`   ra   rG  rL  rY  ru  r~  r  r  r  rE   r  r  r
   upper
startswithr  r  r  r  r  r  rd   re   )rV   rg   s   0@r,   rj  rj  e  s    
51,Q(J(," [[.Q.$JJL4K4KC4P.Q	3	3 [[	
00 [[(!.I-JK(!.I-JK+,.IJ	
000$02 s Rs   &C
'C
rj  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TestDateRangeNonNanoi6  c           	         R p\         P                  ! \        VR7      ;_uu_ 4        \        RR^RR7       RRR4       R#   + '       g   i     R# ; i)z+'unit' must be one of 's', 'ms', 'us', 'ns'rs   r   z
2016-03-04r   r   Nr   r{   s   & r,   test_date_range_reso_validation4TestDateRangeNonNano.test_date_range_reso_validation7  s5    ;]]:S11|\13G 2111   AA	c           	         R p\         P                  ! \        VR7      ;_uu_ 4        \        RRRRR7       RRR4       R#   + '       g   i     R# ; i)z)Use a lower freq or a higher unit insteadrs   r   z
2016-01-02r   r  r,  Nr   r{   s   & r,   %test_date_range_freq_higher_than_reso:TestDateRangeNonNano.test_date_range_freq_higher_than_reso<  s5    9]]:S11|\4H 2111r  c                v   \        R RRRR7      p\        P                  ! RR\        P                  R7      p\	        VP                  R4      RR7      p\        P                  ! W4       \        R RR	R	R7      p\        P                  ! R
R\        P                  R7      p\	        VP                  R4      R	R7      p\        P                  ! W4       \        R RRRR7      p\        P                  ! RR\        P                  R7      p\	        VP                  R4      RR7      p\        P                  ! W4       R# )r   z2016-01-01 00:00:01r  r,  l    \tGl   _tGr  zM8[ms]r   r  l    `g ) l   A"g ) r   z2016-01-01 00:00:00.001r   l     ^cQ)! l   AB|cQ)! r   N)r   r   arangeint64r   viewr   r   )r9   r   r:   r   s   &   r,   !test_date_range_freq_matches_reso6TestDateRangeNonNano.test_date_range_freq_matches_resoC  s    '<4dSii)+<BHHM (!3$?
c,'<4dSii-/DBHHU (!3$?
c,'@tRVWii%'@
 !(!3$?
c,r.   c           	        \        R 4      p\        R4      p\        P                  ! \        RR7      ;_uu_ 4        \	        W^RR7       RRR4       \	        W^RR7      p\
        P                  ! VP                  R4      P                  VP                  R4      P                  .\
        P                  R7      p\        VP                  R	4      4      p\        P                  ! W54       R#   + '       g   i     L; i)
z2022-10-19 11:50:44.719781z2022-10-19 11:50:47.066458zCannot losslessly convert unitsrs   r   r   Nr  r  r   )r   rE   ry   r   r   r   r   r   _valuer  r   r  r   r   )r9   rm   r   r   r:   r   s   &     r,   )test_date_range_freq_lower_than_endpoints>TestDateRangeNonNano.test_date_range_freq_lower_than_endpointsV  s    6745 ]]:-NOOu137 P QT:hh]]4 ''T):)A)AB"((
 !(!34
c, POs   C,,C<	c                   \         P                  ! R 4      p\         P                  ! R4      p\        WRRR7      pVP                  R8X  g   Q hVP                  R8X  g   Q h\         P
                  ! VP                  R4      P                  R4      V^,           P                  R4      P                  R4      R4      P                  R4      p\        P                  ! VP                  4       V4       R# )	z
1066-10-14z
2305-07-13rS   r   r,  zM8[s]i8NiQ )r   
datetime64r   rV   r   r  astyper  r   r   to_numpy)r9   rm   r   r   r   s   &    r,   test_date_range_non_nano-TestDateRangeNonNano.test_date_range_non_nanog  s    l+mmL)#C8xx3yyG###iiLL!&&t,1WW%**40
 $w-	 	 	##CLLNC8r.   r$   N)r^   r_   r`   ra   r  r  r  r  r  rd   re   rf   s   @r,   r  r  6  s%     H
I-&-"9 9r.   r  c            
       Z  a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR t]P,                  P/                  RR]P2                  ! ^R7      3R]P4                  ! ^R7      3R]P6                  ! ^R7      3.4      R 4       tR tR tR tR t Rt!V t"R# ) TestDateRangeNonTickFreqix  c                @  a \        4       p\        P                  ! VR 7      o\        RRSVR7      p\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       g   Q h\        . RORV R2SR	7      p\        P                  ! W44       R
# )calendar2012010120130101rm   r   rV   r   c              3   F   <"   T F  pSP                  V4      x  K  	  R # 5iNis_on_offset.0rL  rV   s   & r,   	<genexpr>WTestDateRangeNonTickFreq.test_date_range_custom_business_month_begin.<locals>.<genexpr>       5A4$$Q''   !FTr   r   r   N)z
2012-01-03z
2012-02-01z
2012-03-01z
2012-04-02z
2012-05-01z
2012-06-01z
2012-07-02z
2012-08-01z
2012-09-04z
2012-10-01z
2012-11-01z
2012-12-03)r   r   CBMonthBeginr   rD  r   r   r   r9   r   hcalr   r   rV   s   &&   @r,   +test_date_range_custom_business_month_beginDTestDateRangeNonTickFreq.test_date_range_custom_business_month_begin{  s    ')##T2zz4Ps55sss555555  vQ-!
$ 	c,r.   c                @  a \        4       p\        P                  ! VR 7      o\        RRSVR7      p\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       g   Q h\        . RORV R2SR	7      p\        P                  ! W44       R
# )r  r  r  r  c              3   F   <"   T F  pSP                  V4      x  K  	  R # 5ir  r  r  s   & r,   r  UTestDateRangeNonTickFreq.test_date_range_custom_business_month_end.<locals>.<genexpr>  r  r  FTr   r   r   N)z
2012-01-31z
2012-02-29z
2012-03-30z
2012-04-30z
2012-05-31z
2012-06-29z
2012-07-31z
2012-08-31z
2012-09-28z
2012-10-31z
2012-11-30z
2012-12-31)r   r   
CBMonthEndr   rD  r   r   r   r  s   &&   @r,   )test_date_range_custom_business_month_endBTestDateRangeNonTickFreq.test_date_range_custom_business_month_end  s    ')!!40zz4Ps55sss555555  vQ-!
$ 	c,r.   c                    \         P                  ! R R.R7      p\        R^W!R7      p\        . R	ORV R2VR7      p\        P
                  ! W44       R# )
z15:00z
2020-11-26)rm   r  z2020-11-25 15:00r   r   r   r   N)z2020-11-25 15:00:00z2020-11-25 16:00:00z2020-11-27 15:00:00z2020-11-27 16:00:00)r   CustomBusinessHourr   r   r   r   )r9   r   rV   r   r   s   &&   r,   $test_date_range_with_custom_holidays=TestDateRangeNonTickFreq.test_date_range_with_custom_holidays  sT    ))<.Q"4adV  vQ-	
 	f/r.   c                \   \        . R
ORV R2RR7      p\        R RRVR7      p\        P                  ! W#4       \        RR.RV R2RR7      p\        RRRVR7      p\        P                  ! W#4       \        . RORV R2RR7      p\        R RRVR7      p\        P                  ! W#4       R	# )2014-07-04 09:002014-07-04 16:00r   r   bhr   r,  2014-07-07 09:002014-07-08 16:00N)r  2014-07-04 10:002014-07-04 11:002014-07-04 12:002014-07-04 13:002014-07-04 14:002014-07-04 15:00r  )r  r  r  r  r  r  r  r  r  2014-07-07 10:002014-07-07 11:002014-07-07 12:002014-07-07 13:002014-07-07 14:002014-07-07 15:002014-07-07 16:002014-07-08 09:002014-07-08 10:00z2014-07-08 11:00z2014-07-08 12:00z2014-07-08 13:00z2014-07-08 14:00z2014-07-08 15:00r  )r   r   r   r   )r9   r   ro   r:   s   &&  r,   test_date_range_businesshour5TestDateRangeNonTickFreq.test_date_range_businesshour  s    	 vQ-
 +-?dQUV
c'!34c$qMPT
 +-?dQUV
c'4 vQ-9
< +-?dQUV
c'r.   c                <   \        R RRVR7      p\        R ^RVR7      p\        R^RVR7      p\        . RORV R2RR7      p\        P                  ! W%4       \        P                  ! W54       \        P                  ! WE4       \        R	R
RVR7      p\        R	^RVR7      p\        R
^RVR7      pV\	        ^-R7      P                  V4      ,           p	RV	n        \        P                  ! Wi4       \        P                  ! Wy4       \        P                  ! W4       R# )r  r  r  r  r   r   r   r   r   z2014-07-04 15:45z2014-07-08 10:45)minutesN)r  r  r  r  r  r  r  r  r  r  r  r  )r   r   r   r   r   r   rV   )
r9   r   idx1idx2idx3r   idx4idx5idx6rx  s
   &&        r,   test_date_range_business_hour27TestDateRangeNonTickFreq.test_date_range_business_hour2  s
   $*<4d
  2BTPTU0"4dS  vQ-!
$ 	d-
d-
d-$*<4d
  2BTPTU0"4dSy4<<TBB		
d.
d.
d.r.   c                v    \        R R^VR7      p\        R .RV R2RR7      p\        P                  ! W#4       R# )z2014-07-01 10:00r  )rm   rV   rU   r   r   r   r   Nr  )r9   r   r  r|  s   &&  r,   #test_date_range_business_hour_short<TestDateRangeNonTickFreq.test_date_range_business_hour_short   s<     2qtT!#5"6D6mRVW	
d.r.   c                x    \        R RRVR7      p\        . RORV R2RR7      p\        P                  ! W#4       R# )	1/1/20137/1/2017ru  r,  r   r   r   N)
2013-01-01rr  rs  r   r;  r  r9   r   r:   r   s   &&  r,   test_date_range_year_start3TestDateRangeNonTickFreq.test_date_range_year_start&  s=    ZdFRvQ-

 	c'r.   c                x    \        R RRVR7      p\        . RORV R2RR7      p\        P                  ! W#4       R# )	r
  r  rk   r,  r   r   r   N)
2013-12-31rp  
2015-12-31z
2016-12-31r  r  s   &&  r,   test_date_range_year_end1TestDateRangeNonTickFreq.test_date_range_year_end0  s=    ZdFDvQ-

 	c'r.   c                    \        R R^VR7      p\        . RORV R2RR7      p\        P                  ! W#4       VP                  R8X  g   Q hR# )
2011-12-31z-2YErV   rU   r   r   r   r   N)r  z
2009-12-31z
2007-12-31r   r   r   r   rV   r  s   &&  r,   &test_date_range_negative_freq_year_end?TestDateRangeNonTickFreq.test_date_range_negative_freq_year_end:  N    FADI6D6mRX
 	c'xx6!!!r.   c                x    \        R RRVR7      p\        . RORV R2RR7      p\        P                  ! W#4       R# )	r
  r  BYEr,  r   r   r   N)r  rp  r  z
2016-12-30r  r  s   &&  r,   &test_date_range_business_year_end_year?TestDateRangeNonTickFreq.test_date_range_business_year_end_yearC  s=    Ze$GDvQ-

 	c'r.   c                x    \        R ^
RVR7      p\        . RORV R2RR7      p\        P                  ! W#4       R# )ru   BMSr   r   r   r   N)
z
2000-01-03z
2000-02-01z
2000-03-01z
2000-04-03z
2000-05-01z
2000-06-01z
2000-07-03z
2000-08-01z
2000-09-01z
2000-10-02r  r   s   &&  r,   test_date_range_bms,TestDateRangeNonTickFreq.test_date_range_bmsM  sA    JTJ  vQ-
  	f/r.   c                   \        R ^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^	^4      \        R^	^4      \        R^
^4      \        R^
^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      .p\        V^ ,          VR,          RVR7      p\        VRV R2RR7      p\        P                  ! W44       R# )	  r+  SMSr  r   r   r   Nr#   r   r   r   r   r   r9   r   datesr   r   s   &&   r,    test_date_range_semi_month_begin9TestDateRangeNonTickFreq.test_date_range_semi_month_beginc  ss   T2r"T1a T1b!T1a T1b!T1a T1b!T1a T1b!T1a T1b!T1a T1b!T1a T1b!T1a T1b!T1a T1b!T2q!T2r"T2q!T2r"T2q!T2r"3
8 %(b	DQE3tfAUC
f*r.   c                   \        R ^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      \        R^	^4      \        R^	^4      \        R^
^4      \        R^
^4      \        R^^4      \        R^^4      \        R^^4      \        R^^4      .p\        V^ ,          VR,          RVR7      p\        VRV R2RR7      p\        P                  ! W44       R# )	r%  r+  SMEr  r   r   r   Nr#   r'  r(  s   &&   r,   test_date_range_semi_month_end7TestDateRangeNonTickFreq.test_date_range_semi_month_end  ss   T2r"T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T1b!T2r"T2r"T2r"T2r"T2r"T2r"3
8 %(b	DQE3tfAUC
f*r.   c                    \        R ^RVR7      p\        R.RV R2RR7      p\        P                  ! W#4       \        R ^RVR7      p\        RR.RV R2RR7      p\        P                  ! WE4       R# )	20110101zWOM-1MONr   z
2011-01-03r   r   r   z
2011-02-07Nr  )r9   r   r   r   r6  rx  s   &&    r,   test_date_range_week_of_month6TestDateRangeNonTickFreq.test_date_range_week_of_month  sy     *ajtT ,TF!}:V
f/:qzPTU!<(#dV1J
	 	g1r.   c                x    \        R ^RVR7      p\        . RORV R2RR7      p\        P                  ! W#4       R# )z2013-1-1zWOM-1SATr   r   r   r   N)z
2013-01-05z
2013-02-02z
2013-03-02z
2013-04-06r  r   s   &&  r,   test_date_range_week_of_month27TestDateRangeNonTickFreq.test_date_range_week_of_month2  s=    J
N DvQ-

 	f/r.   c                    \        R R^VR7      p\        . RORV R2RR7      p\        P                  ! W#4       VP                  R8X  g   Q hR# )
2011-01-31z-2MEr  r   r   r   N)r8  z
2010-11-30z
2010-09-30r  r  s   &&  r,   'test_date_range_negative_freq_month_end@TestDateRangeNonTickFreq.test_date_range_negative_freq_month_end  r  r.   c                    \         P                  ! ^^RR7      p\        R^VVR7      p\        RR.RV R2VR	7      p\        P
                  ! W44       R
# )r   nearest)startingMonthweekday	variationr  r   z
2013-01-31z
2014-01-30r   r   r   N)r   FY5253r   r   r   r   )r9   r   rV   r   r   s   &&   r,   test_date_range_fy5253/TestDateRangeNonTickFreq.test_date_range_fy5253  sZ    ~~AqIN	
 !<(#dV1D
 	c,r.   r  QS)r=  BQEr4  )r>  c                    \        R ^^4      p\        R^^4      p\        W4VR7      p\        W4VR7      p\        V4      \        V4      8X  g   Q hVP                  VP                  8X  g   Q hR# )r  r   r   N)r   r   r   rV   )r9   r   r   r  r   r  r  s   &&&    r,   &test_date_range_freqstr_matches_offset?TestDateRangeNonTickFreq.test_date_range_freqstr_matches_offset  sd     r2&q!$w?v>4yCI%%%yyDII%%%r.   c                x    \        R RRVR7      p\        R R.RV R2RR7      p\        P                  ! W#4       R# )	z2021-12-31 00:00:012023-10-31 00:00:00rk   r  z2022-12-31 00:00:01r   r   r   Nr  r  s   &&  r,   $test_date_range_partial_day_year_end=TestDateRangeNonTickFreq.test_date_range_partial_day_year_end  sK    '%	
 "$9:vQ-

 	c'r.   c                x    \        R RRVR7      p\        RR.RV R2RR7      p\        P                  ! W#4       R	# )
rI  z2021-10-31 00:00:00z-1YEr  z2022-12-31 00:00:00z2021-12-31 00:00:00r   r   r   Nr  r  s   &&  r,   /test_date_range_negative_freq_year_end_inboundsHTestDateRangeNonTickFreq.test_date_range_negative_freq_year_end_inbounds  sK    '%	
 "$9:vQ-

 	c'r.   c                    \        R RR7      p\        RRR7      p\        WRRR7      p\        R RRRRR7      p\        P                  ! W44       R# )	z
1916-08-01zEurope/Oslor5   z
1916-12-01rq  T)rV   r$  r  N)r   r   r   r   )r9   rm   r   resr   s   &    r,   2test_date_range_tzaware_endpoints_accept_ambiguousKTestDateRangeNonTickFreq.test_date_range_tzaware_endpoints_accept_ambiguous  sM    ,=97$$?,Tmt
 	c'r.   c                    R p\        RVR7      p\        RVR7      p\        W#RRR7      p\        RRRR7      P                  VRR7      p\        P                  ! WE4       R	# )
r  z2015-03-28 01:30r5   z2015-03-30 01:30rS   r  )rV   r  r   )r  N)r   r   r%  r   r   )r9   r6   rm   r   r   r   s   &     r,   4test_date_range_tzaware_endpoints_accept_nonexistentMTestDateRangeNonTickFreq.test_date_range_tzaware_endpoints_accept_nonexistent  sd    ,4*r2ESoN  2

+bo+
6 	 	f/r.   r$   N)#r^   r_   r`   ra   r  r  r  r  r  r  r  r  r  r  r"  r*  r.  r2  r5  r9  rA  rE   r  r  r   QuarterBeginBQuarterEndWeekrF  rJ  rM  rQ  rT  rd   re   rf   s   @r,   r  r  x  s     -4-40 7(r&/P/(("(0,+B+B20"- [[7''a89G''b9:gll1-.	
&&(((0 0r.   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestDateRangeUnitInferencei  c                    \        R 4      P                  V4      p\        R4      P                  V4      p\        W#RR7      pVP                  V8X  g   Q hR# )
2025-11-25
2025-11-26rS   r   Nr   r   r   r   r9   r   rm   r   r   s   &&   r,   ,test_date_range_unit_inference_matching_unitGTestDateRangeUnitInference.test_date_range_unit_inference_matching_unit  sJ    ,'//5%--d3#.xx4r.   c                   \        R 4      P                  V4      p\        R4      P                  R4      p\        W#RR7      pVP                  V8X  g   Q h\        W#P                  R4      RR7      pVP                  R8X  g   Q hR# )r\  r]  r   rS   r   r   Nr^  r_  s   &&   r,   .test_date_range_unit_inference_mismatched_unitITestDateRangeUnitInference.test_date_range_unit_inference_mismatched_unit$  sq    ,'//5%--c2#.xx4D 1<xx4r.   c                   \        R 4      P                  R4      p\        R4      P                  R4      p\        WRR7      pVP                  R8X  g   Q h\        WP                  R4      RR7      pVP                  R8X  g   Q hR# )	r\  r  r]  r   	2000000usr   r  r   Nr^  )r9   rm   r   r   s   &   r,   #test_date_range_unit_inference_tick>TestDateRangeUnitInference.test_date_range_unit_inference_tick.  sq    ,'//5%--c2+6xx4D 1Dxx4r.   c                   \        R 4      P                  R4      p\        R4      P                  R4      p\        RR7      p\        WVR7      pVP                  R8X  g   Q h\        ^R7      p\        WVR7      pVP                  R8X  g   Q hV\        ^R7      P                  R4      ,           p\        ^R	7      p\        WVR7      pVP                  R
8X  g   Q hR# )z2025-11-25 09:00:00r   z2025-11-25 09:00:02i )microsecondsr   r  )millisecondsr  )r  r   N)r   r   r   r   r   r   )r9   rm   r   r  r   end2s   &     r,   .test_date_range_unit_inference_dateoffset_freqITestDateRangeUnitInference.test_date_range_unit_inference_dateoffset_freq8  s    /088=-.66s;i0#.xx4a(#.xx4ya088>>Q'3/xx4r.   r$   N)
r^   r_   r`   ra   r`  rc  rg  rm  rd   re   rf   s   @r,   rZ  rZ    s           r.   rZ  )8r  r   r   r   r  numpyr   rE   pandas._libs.tslibsr   pandas._libs.tslibs.offsetsr   r   r   r	   r
   pandas.errorsr   r   pandas.util._test_decoratorsutil_test_decoratorsrb   pandasr   r   r   r   r   r   r   r   r   pandas._testing_testingr   pandas.core.arrays.datetimesr   r  -pandas.tests.indexes.datetimes.test_timezonesr   r   pandas.tseries.holidayr   r  r  r-   r0   ri   r  r  rD  rj  r  r  rZ  r$   r.   r,   <module>r|     s    
 
   )  * ) 	 	 	  J
 <dAq!8D!Q#7
s83( 3(lz
A z
Aze7 e7Pi0 i0XK> K>\N Nb?9 ?9Da0 a0H+  + r.   