Ë
    ¤ehÂ  ã                   óh   — d dl mZmZ d dlZd dlZd dlmZ d dl	m
Z
 d dlmZ d dlmZ  G d„ d«      Zy)	é    )ÚgivenÚ
strategiesN)Úlib)ÚiNaT)ÚOutOfBoundsTimedelta)Ú	Timedeltac                   ó$  — e Zd Zej                  j                  dd ed«       ed«      fd ed«       ed«      fd ed	«       ed
«      fd ed«       ed«      fd ed«       ed«      fd ed«       ed«      fd ed«       ed«      fd ed«       ed«      fd ed«       ed«      fd ed«       ed«      fg
«      d „ «       Zd!„ Zej                  j                  d"„ «       Z
ej                  j                   e ej                  ed#z   ej                   ¬$«      ¬%«      ej                  j                  d&ej"                  ej$                  ej&                  g«      d'„ «       «       «       Zej                  j                  d(g d)¢«      d*„ «       Zy+),ÚTestTimedeltaRoundz
freq,s1,s2Únsú1 days 02:34:56.789123456ú-1 days 02:34:56.789123456Úusz1 days 02:34:56.789123000z-1 days 02:34:56.789123000Úmsz1 days 02:34:56.789000000z-1 days 02:34:56.789000000Úsú1 days 02:34:57z-1 days 02:34:57Ú2sz1 days 02:34:56z-1 days 02:34:56Ú5sz1 days 02:34:55z-1 days 02:34:55Úminú1 days 02:35:00z-1 days 02:35:00Ú12minz1 days 02:36:00z-1 days 02:36:00Úhz1 days 03:00:00z-1 days 03:00:00Údz1 daysz-1 daysc                 ó�   — t        d«      }t        d«      }|j                  |«      }||k(  sJ ‚|j                  |«      }||k(  sJ ‚y )Nr   r   )r   Úround)ÚselfÚfreqÚs1Ús2Út1Út2Úr1Úr2s           ún/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/scalar/timedelta/methods/test_round.pyÚ
test_roundzTestTimedeltaRound.test_round   sJ   € ô: Ð2Ó3ˆÜÐ3Ó4ˆà�X‰X�d‹^ˆØ�RŠxˆˆxØ�X‰X�d‹^ˆØ�RŠxˆ‰xó    c                 ó°   — t        d«      }dD ]:  \  }}t        j                  t        |¬«      5  |j	                  |«       d d d «       Œ< y # 1 sw Y   ŒGxY w)Nr   ))ÚYEz,<YearEnd: month=12> is a non-fixed frequency)ÚMEz#<MonthEnd> is a non-fixed frequency)ÚfoobarzInvalid frequency: foobar©Úmatch)r   ÚpytestÚraisesÚ
ValueErrorr   )r   r   r   Úmsgs       r#   Útest_round_invalidz%TestTimedeltaRound.test_round_invalid5   sW   € ÜÐ2Ó3ˆð
ò 	‰IˆD�#ô
 —‘œz°Ô5ñ Ø—‘˜”÷ð ñ	÷
ð ús   ¯AÁA	c                 ó¦  — t         j                  j                  d«      }t         j                  t        d¬«      z   t        d«      z
  }||k(  sJ ‚t         j                  j	                  d«      }t         j                  t        d«      z
  }||k(  sJ ‚d}t        j                  t        |¬«      5  t         j                  j	                  d«       d d d «       t        j                  t        |¬«      5  t         j                  j                  d«       d d d «       d}t        j                  t        |¬«      5  t         j                  j                  d«       d d d «       t        j                  t        |¬«      5  t         j                  j                  d«       d d d «       y # 1 sw Y   ŒÕxY w# 1 sw Y   ŒžxY w# 1 sw Y   ŒexY w# 1 sw Y   y xY w)	Nr   é   )Úsecondsiò§iÿ×ò2zICannot round -106752 days \+00:12:43.145224193 to freq=s without overflowr*   zFCannot round 106751 days 23:47:16.854775807 to freq=s without overflow)	r   r   ÚceilÚmaxÚfloorr,   r-   r   r   )r   ÚresultÚexpectedr/   s       r#   Ú test_round_implementation_boundsz3TestTimedeltaRound.test_round_implementation_bounds@   sj  € ô —‘×#Ñ# CÓ(ˆÜ—=‘=¤9°QÔ#7Ñ7¼)ÀIÓ:NÑNˆØ˜Ò!Ð!Ð!ä—‘×$Ñ$ SÓ)ˆÜ—=‘=¤9¨YÓ#7Ñ7ˆØ˜Ò!Ð!Ð!ð Yð 	ô �]‰]Ô/°sÔ;ñ 	%Ü�M‰M×Ñ Ô$÷	%ä�]‰]Ô/°sÔ;ñ 	%Ü�M‰M×Ñ Ô$÷	%ð WˆÜ�]‰]Ô/°sÔ;ñ 	$Ü�M‰M×Ñ˜sÔ#÷	$ä�]‰]Ô/°sÔ;ñ 	%Ü�M‰M×Ñ Ô$÷	%ð 	%÷	%ð 	%ú÷	%ð 	%ú÷	$ð 	$ú÷	%ð 	%ús0   Â/ F#Ã2 F/Ä7 F;Å: GÆ#F,Æ/F8Æ;GÇGr2   )Ú	min_valueÚ	max_value)ÚvalÚmethodc                 ó  ‡‡‡— t         Št        Št        j                  |«      } ‰|«      }ˆˆˆfd„}d} |||d«       d} |||d«       d} |||d«       d} |||d	«       d
} |||d«       d} |||d«       d} |||d«       y )Nc                 ó¶  •— |dk(  r�nžt        | j                  |«      \  }}t        ||z
  «      }| j                  |z
  }|| j                  k  sJ ‚| j                  |z   }|| j                  kD  sJ ‚d}|dk(  r�n.‰‰j                  u rD|‰j                  j                  kD  �rt        j                  ‰|¬«      5   ‰| |«       d d d «       y ‰‰j                  u rC|‰j                  j                  k  rµt        j                  ‰|¬«      5   ‰| |«       d d d «       y ||k\  rC|‰j                  j                  kD  rmt        j                  ‰|¬«      5   ‰| |«       d d d «       y |‰j                  j                  k  r*t        j                  ‰|¬«      5   ‰| |«       d d d «       y  ‰| |«      }	|	| z
  }
t        |
j                  «      }||k  sJ ‚|	j                  |z  dk(  sJ ‚‰‰j                  u r||dz  k  sJ ‚y ‰‰j                  u r|	| k  sJ ‚y ‰‰j                  u r|	| k\  sJ ‚y y # 1 sw Y   y xY w# 1 sw Y   y xY w# 1 sw Y   y xY w# 1 sw Y   y xY w)Nr2   zwithout overflowr   r*   é   )ÚdivmodÚ_valueÚintr4   r5   r,   r-   r6   r   Úabsr   )ÚtsÚnanosÚunitÚdivÚmodÚdiffÚlbÚubr/   ÚresÚtdÚclsÚerr_clsr=   s              €€€r#   Úcheckerz5TestTimedeltaRound.test_round_sanity.<locals>.checkerf   s(  ø€ à˜ŠzÙä! "§)¡)¨UÓ3‘��SÜ˜5 3™;Ó'�Ø—Y‘Y ‘_�Ø˜RŸY™Y’Ð&�Ø—Y‘Y Ñ%�Ø˜BŸI™I’~Ð%�~à(�Ø˜!’8áØ˜sŸx™xÑ'Ø˜CŸG™GŸN™NÓ*Ü#Ÿ]™]¨7¸#Ô>ñ -Ù" 2 tÔ,÷-àØ˜sŸy™yÑ(Ø˜CŸG™GŸN™NÒ*Ü#Ÿ]™]¨7¸#Ô>ñ -Ù" 2 tÔ,÷-àØ˜D’[Ø˜CŸG™GŸN™NÒ*Ü#Ÿ]™]¨7¸#Ô>ñ -Ù" 2 tÔ,÷-àØ˜#Ÿ'™'Ÿ.™.Ò(ÜŸ™ w°cÔ:ñ )Ù˜r 4Ô(÷)àá˜˜TÓ"ˆCà�r‘ˆBÜ�r—y‘y“>ˆDØ˜%’<Ð�<Ø—:‘: Ñ%¨Ò*Ð*Ð*à˜Ÿ™Ñ"Ø˜u q™yÒ(Ð(Ñ(Ø˜3Ÿ9™9Ñ$Ø˜b’yÐ ‘yØ˜3Ÿ8™8Ñ#Ø˜b’yÐ ‘yð $÷;-àú÷-àú÷-àú÷)àús0   Â8
H+Ä	
H7Å
IÆ
IÈ+H4È7I ÉIÉIr2   r   iè  r   i@B r   i Êš;r   l    XŽp7 r   l     qar   l     ž"R: ÚD)r   r   ÚnpÚint64)r   r<   r=   rN   rQ   rF   rO   rP   s     `   @@r#   Útest_round_sanityz$TestTimedeltaRound.test_round_sanityZ   s¤   ú€ ô ˆÜ&ˆä�h‰h�s‹mˆÙ�‹Xˆö0	!ðd ˆÙ��E˜4Ô àˆÙ��E˜4Ô àˆÙ��E˜4Ô àˆÙ��E˜3Ôà"ˆÙ��E˜5Ô!à'ˆÙ��E˜3Ôà,ˆÙ��E˜3Õr%   rG   )r   r   r   r   c                 ó   — t        d«      j                  |«      }|j                  d«      }|t        d«      k(  sJ ‚|j                  |j                  k(  sJ ‚|j	                  d«      }|t        d«      k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  d«      }|t        d«      k(  sJ ‚|j                  |j                  k(  sJ ‚y )Nr   r   r   z1 days 02:34:00)r   Úas_unitr   Ú_cresor6   r4   )r   rG   rN   rM   s       r#   Útest_round_non_nanoz&TestTimedeltaRound.test_round_non_nano­   s½   € äÐ(Ó)×1Ñ1°$Ó7ˆà�h‰h�u‹oˆØ”iÐ 1Ó2Ò2Ð2Ð2Ø�z‰z˜RŸY™YÒ&Ð&Ð&à�h‰h�u‹oˆØ”iÐ 1Ó2Ò2Ð2Ð2Ø�z‰z˜RŸY™YÒ&Ð&Ð&à�g‰g�e‹nˆØ”iÐ 1Ó2Ò2Ð2Ð2Ø�z‰z˜RŸY™YÒ&Ð&Ñ&r%   N)Ú__name__Ú
__module__Ú__qualname__r,   ÚmarkÚparametrizer   r$   r0   Ú
skip_ubsanr9   r   ÚstÚintegersr   r   Úi8maxr   r6   r4   rU   rY   © r%   r#   r
   r
      sÕ  „ Ø‡[�[×ÑØð ÙÐ5Ó6ÙÐ6Ó7ðð ÙÐ5Ó6ÙÐ6Ó7ðð ÙÐ5Ó6ÙÐ6Ó7ðð
 ‘)Ð-Ó.±	Ð:LÓ0MÐNØ‘9Ð.Ó/±Ð;MÓ1NÐOØ‘9Ð.Ó/±Ð;MÓ1NÐOØ‘IÐ/Ó0±)Ð<NÓ2OÐPØ‘iÐ 1Ó2±IÐ>PÓ4QÐRØ‘)Ð-Ó.±	Ð:LÓ0MÐNØ‘)˜HÓ%¡y°Ó';Ð<ð/	
óñ8ó9ð8ò	ð ‡[�[×Ññ%ó ð%ð2 ‡[�[×ÑÙ
ˆ{ˆr�{‰{ T¨A¡X¸¿¹ÔCÔDØ‡[�[×ÑØ�9—?‘? I§O¡O°Y·^±^ÐDóñL óó Eó ð
L ð\ ‡[�[×Ñ˜VÒ%<Ó=ñ'ó >ñ'r%   r
   )Ú
hypothesisr   r   r`   ÚnumpyrS   r,   Úpandas._libsr   Úpandas._libs.tslibsr   Úpandas.errorsr   Úpandasr   r
   rc   r%   r#   ú<module>rj      s*   ð÷ó Û å Ý $Ý .å ÷l'ò l'r%   