
    Mh                         S r SSKrSSKrSSKJrJrJrJr  SSK	J
r  SSKJr  \R                  " \\/S9S 5       r\R                  " \" S5      \" S5      4\" S	5      \" S5      4S
/S S9S 5       r " S S5      rg)zHTests for Interval-Interval operations, such as overlaps, contains, etc.    N)IntervalIntervalIndex	Timedelta	Timestamp)IntervalArray)paramsc                     U R                   $ )z6
Fixture for testing both interval container classes.
paramrequests    \/var/www/html/env/lib/python3.13/site-packages/pandas/tests/arrays/interval/test_overlaps.pyconstructorr      s    
 ==    z0 days1 day
2018-01-01)r      c                 2    [        U S   5      R                  $ )Nr   type__name__xs    r   <lambda>r      s    $qt*%%r   )r   idsc                     U R                   $ )z
Fixture for generating intervals of different types from a start value
and a shift value that can be added to start to generate an endpoint.
r
   r   s    r   start_shiftr      s     ==r   c            
           \ rS rSrS r\R                  R                  S\\	/5      S 5       r
S r\R                  R                  SSSS	\" S
5      \" S5      /S S9S 5       rSrg)TestOverlaps'   c           	         Uu  pV[        XUSU-  -   U5      nXUSU-  -   4XV-   USU-  -   4XV-
  USU-  -   4USU-  -   USU-  -   4USU-  -   USU-  -   4USU-  -   USU-  -   4/nUR                  X5      n	UR                  =(       a    U	R                  n
[        R
                  " SSSSU
S/5      nU	R                  U5      n[        R                  " X5        g )N            TF)	r   from_tuplesclosed_rightclosed_leftnparrayoverlapstmassert_numpy_array_equal)selfr   r   closedother_closedstartshiftintervaltuplesinterval_containeradjacentexpectedresults                r   test_overlaps_interval#TestOverlaps.test_overlaps_interval(   s   "E1u9#4lC AI%&]EAI-.]EAI-.QYE	 12QYE	 12QYE	 12
 )44VD((K-?-K-K88T4tXuEF#,,X6
##F5r   other_constructorc                     UR                  [        S5      5      nUR                  [        S5      5      n[        R                  " [        SS9   UR                  U5        S S S 5        g ! , (       d  f       g = f)Nr%   z^$match)from_breaksrangepytestraisesNotImplementedErrorr+   )r.   r   r;   r5   other_containers        r    test_overlaps_interval_container-TestOverlaps.test_overlaps_interval_container<   sV     )44U1X>+77aA]].d;''8 <;;s   A))
A7c                    Uu  p4[        X3U-   5      nX3U-   4[        R                  USU-  -   USU-  -   4/nUR                  U5      n[        R                  " / SQ5      nUR                  U5      n	[        R                  " X5        g)zNA values are marked as Falser#   r"   )TFFN)r   r)   nanr&   r*   r+   r,   r-   )
r.   r   r   r1   r2   r3   r4   r5   r7   r8   s
             r   test_overlaps_naTestOverlaps.test_overlaps_naD   s    "E5=1 EM"FFQYE	 12

 )44V<8801#,,X6
##F5r   other
   Tfoor   r   c                 ,    [        U 5      R                  $ )Nr   r   s    r   r   TestOverlaps.<lambda>W   s    d1g&&r   )r   c                     UR                  [        S5      5      nS[        U5      R                   3n[        R
                  " [        US9   UR                  U5        S S S 5        g ! , (       d  f       g = f)Nr%   z#`other` must be Interval-like, got r=   )r?   r@   r   r   rA   rB   	TypeErrorr+   )r.   r   rK   r5   msgs        r   test_overlaps_invalid_type'TestOverlaps.test_overlaps_invalid_typeT   sX     )44U1X>3DK4H4H3IJ]]9C0''. 100s   A''
A5 N)r   
__module____qualname____firstlineno__r9   rA   markparametrizer   r   rE   rI   r   r   rS   __static_attributes__rU   r   r   r   r   '   s~    6( [[0=-2PQ9 R96  [[	T5)G,i.EF&  
/
/r   r   )__doc__numpyr)   rA   pandasr   r   r   r   pandas._testing_testingr,   pandas.core.arraysr   fixturer   r   r   rU   r   r   <module>rc      s    N     , }56 7 	8	i01	<	 )G"45
 	&6/ 6/r   