
    A>i4&                     |    S SK rS SKrS SKJr  S SKrS SKJrJrJ	r	  S SK
Jr  S SKJr   " S S5      r " S S5      rg)	    N)Pandas4Warning)IndexTimedeltaIndextimedelta_range)Hourc                      \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 r\R                  R                  SSS/5      S 5       rS r\R                  R                  S\" SSSSS9\" SSSSS94\" SSSSS9\" SSSSS94\" SSSSS9SS \" / SSSS94/5      S 5       r\R                  R                  S\" / SQSS9\" SS /SS94\" / S!QSS9\" S"S/SS94\" / S#QSS9SSS$2   \" / S#QSS94/5      S% 5       rS&rg)'TestTimedeltaIndex   c           	      D   [        SSS9n[        SSS9nUR                  U5      n[        SSS9n[        R                  " X45        [	        [
        R                  " SSS[
        R                  S	95      n[        S
SSS9nUR                  U5        UR                  U5        g )N1day   periods3day   r         )dtype1 day
   D)startr   freq)r   uniontmassert_index_equalr   nparangeint64)selfi1i2resultexpecteds        j/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/indexes/timedeltas/test_setops.py
test_unionTestTimedeltaIndex.test_union   s    VQ/VQ/""615
f/299QARXX677BSA

    c                    [        SSS9nUSS  nUS S nUR                  U5      (       d   eUR                  U5      n[        R                  " XA5        UR                  USS9n[        / SQ5      n[        R                  " XE5        g )Nr   r   r      Fsort)z4 Daysz5 Daysz1 Daysz2 Dayz3 Days)r   _can_fast_unionr   r   r   r   )r    tdileftrightr#   r$   s         r%   test_union_sort_false(TestTimedeltaIndex.test_union_sort_false   s    fa012wBQ ##E****E"
f*E.!"ST
f/r(   c                    Sn[         R                  " [        US9   [        / SQ5      nS S S 5        [        WR	                  5       SS9nUR                  U5      n[         R                  " XC5        US S R                  U5      n[         R                  " XC5        UR                  UR                  :X  d   eg ! , (       d  f       N= f)Nz:'d' is deprecated and will be removed in a future version.)match)3d1d2dinferr   r   )r   assert_produces_warningr   r   sort_valuesr   r   r   )r    msgidxorderedr#   s        r%   test_union_coverage&TestTimedeltaIndex.test_union_coverage.   s    J''cB !34C C !2As#
f.!""7+
f.{{gll*** CBs   B88
Cc                     [        SSSS9n[        SSSS9nUR                  U5      n[        [        [	        U5      [	        U5      -  5      5      n[
        R                  " X45        g )Nr      3hr   r   4h)r   r   r   sortedsetr   r   )r    rng_arng_br#   exps        r%   test_union_bug_1730&TestTimedeltaIndex.test_union_bug_1730;   sV    >>U#VCJU$;<=
f*r(   c                     [        S/5      n[        / SQ5      nUR                  U5      n[        [        [        U5      [        U5      -  5      5      n[        R
                  " X45        g )Nz1 day 15:19:49.695000)z2 day 13:04:21.322000z1 day 15:27:24.873000z1 day 15:31:05.350000)r   r   rF   rG   r   r   r    r/   r0   r#   rJ   s        r%   test_union_bug_1745&TestTimedeltaIndex.test_union_bug_1745C   sW    678W
 E"VCIE
$:;<
f*r(   c                     [        SS5      nU[        R                  R                  S5      -   nUR	                  U5      n[        [        [        U5      [        U5      -  5      5      n[        R                  " X45        g )Nr   30D   )
r   pdoffsetsMinuter   r   rF   rG   r   r   rN   s        r%   test_union_bug_4564&TestTimedeltaIndex.test_union_bug_4564M   s_    w.rzz((,,E"VCIE
$:;<
f*r(   c                     [        SSS9nU/ SQ   nU/ SQ   nUR                  b   eUR                  b   eUR                  U5      n[        R                  " XA5        UR                  S:X  d   eg )Nz1 Dayr   r   )r      r*   rB   )r   r*   rZ   r   )r   r   r   r   r   )r    r.   r/   r0   r#   s        r%   test_union_freq_infer(TestTimedeltaIndex.test_union_freq_inferU   sq     gq1< Iyy   zz!!!E"
f*{{c!!!r(   c                    [        SSSS9nU[        R                  R                  S5      -   nUR	                  U5      n[        U5      S:X  d   e[        SSSS9nU[        R                  R                  S5      -   nUR	                  U5      n[        SS	SS9n[        R                  " X45        UR                  UR                  :X  d   eg )
Nr   rB   hrD   r   r   rZ   z1 day 01:00:00r*   )	r   rT   rU   r   intersectionlenr   r   r   )r    index_1index_2r#   r$   s        r%   test_intersection_bug_1708-TestTimedeltaIndex.test_intersection_bug_1708d   s    !'13?BJJOOA..%%g.6{a!'13?BJJOOA..%%g."#3QSI
f/{{hmm+++r(   c                    [        SSSS9n[        SSSS9nUR                  X1S9nUc$  [        R                  " XCR	                  5       5        [        R                  " XC5        UR                  X!S9nXRLd   e[        R                  " XR5        g )Nr   rB   r^   rD   r+   )r   r_   r   r   r;   )r    r,   firstsecond	intersectinters         r%   test_intersection_equal*TestTimedeltaIndex.test_intersection_equals   s      = !#>&&v&9	<!!)-?-?-AB
i0 ""5"4!!!
e+r(   zperiod_1, period_2)r   rB   )rB   r   c                     [        SUSS9n[        SUSS9n[        SSSS9nUR                  XSS9n[        R                  " Xv5        g )Nr   r^   rD   r   r+   )r   r_   r   r   )r    period_1period_2r,   ra   rb   r$   r#   s           r%   test_intersection_zero_length0TestTimedeltaIndex.test_intersection_zero_length   sO     "'8#F!'8#F"7AC@%%g%9
f/r(   c                     [        SSSS9n[        SSSS9nUR                  X1S9nX$Ld   eX4Ld   e[        R                  " XB5        g )Nr   r   r^   rD   r*   r+   )r   r_   r   assert_copy)r    r,   ra   rb   r#   s        r%   test_zero_length_input_index/TestTimedeltaIndex.test_zero_length_input_index   sU    !'13?!'13?%%g%9$$$$$$
v'r(   zrng, expectedr   r   r^   r=   r   r   namerB   otherNr   zm8[us])r   rv   r   c                     [        SSSSS9nUR                  XS9nUc  UR                  5       n[        R                  " XR5        UR
                  UR
                  :X  d   eUR                  UR                  :X  d   eg )Nr   rB   r^   r=   ru   r+   )r   r_   r;   r   r   rv   r   r    rngr$   r,   baser#   s         r%   test_intersection$TestTimedeltaIndex.test_intersection   st    , w%H""3"2<++-H
f/{{hmm+++{{hmm+++r(   )5 hour2 hour4 hourz9 hourrv   r   r   )r   r~   r~   1 hourr   r   r   r   z3 hourc                 \   [        / SQSS9nUR                  XS9nUc  UR                  5       n[        R                  " XR5        UR
                  UR
                  :X  d   e[        XAS S S2   :H  5      (       a%  Uc"  [        UR                  [        5      (       d   eg UR                  b   eg )Nr   r=   r   r+   r   )
r   r_   r;   r   r   rv   all
isinstancer   r   ry   s         r%   test_intersection_non_monotonic2TestTimedeltaIndex.test_intersection_non_monotonic   s    0 FUS""3"2<++-H
f/{{hmm+++ t4R4y !!dlfkk40000;;&&&r(    )__name__
__module____qualname____firstlineno__r&   r1   r?   rK   rO   rW   r[   rc   rj   pytestmarkparametrizero   rs   r   r   r|   r   __static_attributes__r   r(   r%   r	   r	      s   
0 ++++",, [[1FF3CD0 E0( [[  5I5I  7K4H  #EJ12Nr%xH	
(,)(, [[ GeT(3%@ GgV(3$? GeTbD GeT		
,'-,'r(   r	   c                        \ rS rSrS rS rSrg)TestTimedeltaIndexDifference   c                 n   [        SSSS9n[        SSSS9n[        SS/S S9nUR                  X15      n[        R                  " XT5        [        R
                  " SXT5        [        SSSS9nUR                  X15      n[        SS/SS9n[        R                  " XT5        [        R
                  " SXT5        g )	N0 days5 daysr   r9   1 days4 daysr   2 days)r   r   
differencer   r   assert_attr_equal)r    r,   indexrw   r$   idx_diffs         r%   test_difference_freq1TestTimedeltaIndexDifference.test_difference_freq   s      (=(=!8X"6TB##E0
h1
VX8  (=##E0!8X"6SA
h1
VX8r(   c                    [        / SQ5      n[        SSSS9nUR                  X15      n[        SS/S S9nUc  UR                  5       n[        R
                  " XE5        [        R                  " SXE5        [        S	SSS9nUR                  X15      n[        SS/S S9nUc  UR                  5       n[        R
                  " XE5        [        R                  " SXE5        g )
N)r   z3 daysr   r   r   r   r   r   r   r9   r   r   r   r   )r   r   r   r;   r   r   r   )r    r,   r   rw   r   r$   s         r%   test_difference_sort1TestTimedeltaIndexDifference.test_difference_sort   s    H
  (=##E0!8X"6TB<++-H
h1
VX8(=##E0!8X"6TB<++-H
h1
VX8r(   r   N)r   r   r   r   r   r   r   r   r(   r%   r   r      s    9&9r(   r   )numpyr   r   pandas.errorsr   pandasrT   r   r   r   pandas._testing_testingr   pandas.tseries.offsetsr   r	   r   r   r(   r%   <module>r      s:      (  
  'D' D'N,9 ,9r(   