
    A>i                     l    S SK J r   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
Jr  S SKJr   " S S5      rg)    )datetimeN)OutOfBoundsDatetime)Series	Timestampisnanotnac            	           \ rS rSrS rS rS rS rS r\	R                  R                  SSS	/5      \	R                  R                  S
/ SQ\R                  " / SQ5      /5      S 5       5       rS rS rS rSrg)TestSeriesClip   c                 ^   UR                  5       nUR                  US9R                  5       U:X  d   eUR                  US9R                  5       U:X  d   eUR                  SS5      n[        R                  " USS5      n[
        R                  " X45        [        U[        5      (       d   eg )Nlowerupperg      g      ?)	medianclipminmaxnptmassert_series_equal
isinstancer   )selfdatetime_seriesvalresultexpecteds        d/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/series/methods/test_clip.py	test_clipTestSeriesClip.test_clip   s    $$&####.224;;;####.224;;; %%dC077?D#6
v0(F++++    c           
      F   [        [        R                  SSS/5      [        / SQ5      [        [        R                  " [        R                  SSS/SS	95      /nU H  nUS   nUR                  US
9nUR                  US9nU[        U5         R                  5       U:X  d   eU[        U5         R                  5       U:X  d   e[        [        U5      5      [        [        U5      5      :X  d   e[        [        U5      5      [        [        U5      5      :X  a  M   e   g )N      ?       @      @)Nabc         D)unitr   r   )r   r   nanpdto_datetimer   r   r   r   listr   )r   serssthreshr   r   s         r   test_clip_types_and_nulls(TestSeriesClip.test_clip_types_and_nulls   s    BFFCc*+()2>>2661a"3#>?
 AqTFFFF(EFFF(Eu&**,666u&**,666Q=De$5555Q=De$5555 r!   c                 :   [        [        R                  SS/US9nUR                  SS9nUR                  SS9n[        [        R                  SS/US9n[        [        R                  SS/US9n[        R
                  " X55        [        R
                  " XF5        g )Nr#   r%   dtyper$   r   r   )r   r/   NAr   r   r   )r   any_numeric_ea_dtypesers_clipped_uppers_clipped_lowerexpected_upperexpected_lowers          r   #test_series_clipping_with_na_values2TestSeriesClip.test_series_clipping_with_na_values.   s     beeS#&.BC(((-(((-S 19MNS 19MN
?
?r!   c                     [        / SQ5      n[        R                  " UR                  [        R
                  5      [        / SQ5      5        [        R                  " UR                  [        R
                  [        R
                  S9[        / SQ5      5        UR                  SS[        R
                  /S9n[        R                  " U[        / SQ5      5        UR                  S[        R
                  S/S9n[        R                  " U[        / S	Q5      5        [        / SQ5      nUR                  S[        R
                  [        R
                  [        R
                  /5      n[        R                  " X5        g
)z&Should process np.nan argument as Noner)   r*   r+   )r   r   r      r   )r)   rE   r%   r)   r   )r)   r*   r#   N)r   r   r   r   r   r.   )r   r3   resr   s       r   test_clip_with_na_args%TestSeriesClip.test_clip_with_na_args<   s     9
qvvbff~vi/@A
qvvBFF"&&vA6)CTU ffAq"&&>f*
sF;$78ffArvvq>f*
sF;$78 9BFFBFFBFF34
q)r!   c                    [        / SQ5      n[        / SQ5      n[        / SQ5      n[        R                  " UR                  X#5      [        / SQ5      5        [        R                  " UR                  SU5      [        / SQ5      5        g )N)r#   r#   g      @)r#   r$   r%   )      ?g      @      @)r#   r$   rK   rJ   )rJ   rJ   rK   )r   r   r   r   )r   r3   r   r   s       r   test_clip_against_series'TestSeriesClip.test_clip_against_seriesP   s`     ?#''
qvve3VO5LM
qvvc516/3JKr!   inplaceTFr   rD   c                     [        / SQ5      nUR                  X!S9n[        / SQ5      nU(       a  XCL d   e[        R                  " XESS9  g )N)         )r   rN   rD   T)check_exact)r   r   r   r   )r   rN   r   originalr   r   s         r   test_clip_against_list_like*TestSeriesClip.test_clip_against_list_like[   sG     )$U<)$%%%
vTBr!   c                    [        S5      n[        [        S5      [        S5      /5      nUR                  US9n[        [        S5      [        S5      /5      n[        R                  " X45        [        SSS9n[        [        SSS9[        SSS9/5      nUR                  US9n[        [        SSS9[        SSS9/5      n[        R                  " X45        g )Nz2015-12-01 09:30:30z2015-12-01 09:30:00z2015-12-01 09:31:00r   z
US/Eastern)tz)r   r   r   r   r   )r   tr3   r   r   s        r   test_clip_with_datetimes'TestSeriesClip.test_clip_with_datetimesg   s     +,I34i@U6VWXa,-y9N/OP
 	v0+=/LA/LA
 a/LA/LA
 	v0r!   c                 ,   [        [        SSS5      [        SSS5      /[        S9nUR                  [        R
                  [        R                  S9n[        [        R
                  [        R                  /[        S9n[        R                  " X#5        g )Nr)   '  	   r8   r   r   )	r   r   objectr   r   r   r   r   r   )r   r<   r   r   s       r   2test_clip_with_timestamps_and_oob_datetimes_objectATestSeriesClip.test_clip_with_timestamps_and_oob_datetimes_object   sf    hq!Q'$1)=>fM	Y]]C9==)--8G
v0r!   c                    Sn[        [        SSS5      [        SSS5      /US9nSn[        R                  " [        US9   UR                  [        R                  [        R                  S9  S S S 5        [        R                  R                  S	5      n[        R                  R                  S	5      nUR                  XES9n[        XE/US9n[        R                  " Xg5        g ! , (       d  f       N}= f)
NzM8[us]r)   r]   r^   r8   zeIncompatible \(high-resolution\) value for dtype='datetime64\[us\]'. Explicitly cast before operating)matchr_   us)r   r   pytestraisesr   r   r   r   r   as_unitr   r   )r   r9   r<   msgr   r   r   r   s           r   4test_clip_with_timestamps_and_oob_datetimes_non_nanoCTestSeriesClip.test_clip_with_timestamps_and_oob_datetimes_non_nano   s    hq!Q'$1)=>eL/ 	 ]].c:HH9==	H> ; %%d+%%d+35.6
v0 ;:s    -C$$
C2 N)__name__
__module____qualname____firstlineno__r   r5   rA   rG   rL   rf   markparametrizer   asarrayrU   rZ   ra   rj   __static_attributes__rl   r!   r   r
   r
      s    	,6 @*(	L [[Yu6[[Wy"**Y2G&HIC J 7C1811r!   r
   )r   numpyr   rf   pandas.errorsr   pandasr/   r   r   r   r   pandas._testing_testingr   r
   rl   r!   r   <module>rz      s/       -   K1 K1r!   