
    Mh                        S SK rS SKrS SKJr  S SKJr  S SKJr	  S SK
Jr  S SKrS SKJr  S SKJr  S rS rS	 rS
 rS r\R0                  R3                  SS /\R4                  " SS5      / SQ4S /S\SS/4S /\R6                  \SS/4/ SQ\R4                  " SS5      S/S-  4/ SQ\R4                  " SS5      \R4                  " SS5      \R4                  " SS5      // SQ4/5      S 5       rS rS rS rS r S r!\R0                  R3                  S\R4                  " SSS 9\RD                  " / S!QS"S#9/5      S$ 5       r#S% r$S& r%g)'    N)iNaT)IncompatibleFrequency)	_registry)PeriodDtype)PeriodArrayc                      [         [        R                  ;   d   e[        R                  " S5      n [        S5      nX:X  d   eg )Nz	Period[D]D)r   registrydtypesfindresultexpecteds     Q/var/www/html/env/lib/python3.13/site-packages/pandas/tests/arrays/test_period.pytest_registeredr      s8    (//)))]];'F3H    c                      [         R                  " / SQSS9R                  n [        R                  " SS[
        /5      n[        R                  " X5        g )N)20002001N	period[D]dtype*  ;,  )r   _from_sequenceasi8nparrayr   tmassert_numpy_array_equalr   s     r   	test_asi8r!      s>    ''(>kRWWFxxt,-H1r   c            
      t   [         R                  " SS/SS9n [        R                  " [        SS9   U R                  SS/S	[        R                  " SS
S9S9  S S S 5        Sn[        R                  " [        US9   U R                  SS/S	SS9  S S S 5        g ! , (       d  f       NF= f! , (       d  f       g = f)Nr   r   r   r   freqmatchr   TWr#   )
allow_fill
fill_valuez6value should be a 'Period' or 'NaT'. Got 'str' insteadfoo)	r   r   pytestraisesr   takepdPeriod	TypeError)arrmsgs     r   test_take_raisesr4   #   s    

$
$ff%5[
IC	,F	;!RTbiiS6QR 
< CC	y	,!RTe< 
-	,	 
<	; 
-	,s   'B;B)
B&)
B7c                      [         R                  " / SQSS9n [        R                  " [        SS9   U R                  U S S 5        S S S 5        g ! , (       d  f       g = f)Nr   r   2002r   r   Lengthr$      )r   r   r,   r-   
ValueErrorfillnar2   s    r   test_fillna_raisesr=   -   sA    

$
$%=[
QC	z	2

3r7 
3	2	2s   A
Ac                      [         R                  " / SQSS9n U R                  [        R                  " SS5      5      nXLd   eg )Nr6   r   r   r   r	   )r   r   r;   r/   r0   )r2   r   s     r   test_fillna_copiesr?   3   s:    

$
$%=[
QCZZ		&#./Fr   zkey, value, expectedr   r	   )r      r9   r@   r9   )r   r@   r9   r      r   r7   )r   r   i-  c                     [        [        R                  " S5      SS9n[        USS9nXU '   [        R                  " X25        g )NrA   r   r   )r   r   aranger   assert_period_array_equal)keyvaluer   r2   s       r   test_setitemrG   =   s9     biil+
6C8;7HH  /r   c                  v   [        [        R                  " S5      SS9n [        R                  " [
        SS9   [        R                  " SSS9U S	'   S S S 5        [         R                  " SS
/SS9n[        R                  " [
        SS9   XS	S/'   S S S 5        g ! , (       d  f       NN= f! , (       d  f       g = f)NrA   r   r   r#   r$   r   Yr(   r   r   z	period[Y]r@   )	r   r   rC   r,   r-   r   r/   r0   r   r2   others     r   %test_setitem_raises_incompatible_freqrL   R   s    
biil+
6C	,F	;6,A 
< &&'7{KE	,F	;QF 
<	;	 
<	; 
<	;s   B	B*
B'*
B8c                      [        [        R                  " S5      SS9n [        R                  " [
        SS9   [        R                  " SSS9/U S	S
/'   S S S 5        g ! , (       d  f       g = f)NrA   r   r   lengthr$   r   r	   r(   r   r@   )r   r   rC   r,   r-   r:   r/   r0   r<   s    r   test_setitem_raises_lengthrO   \   sK    
biil+
6C	z	2yyc23QF 
3	2	2s   A
A+c                      [        [        R                  " S5      SS9n [        R                  " [
        SS9   SU S'   S S S 5        g ! , (       d  f       g = f)NrA   r   r   intr$   r@   r   )r   r   rC   r,   r-   r1   r<   s    r   test_setitem_raises_typerR   b   s9    
biil+
6C	y	.A 
/	.	.s   A
Ac                      [         R                  " SS/SS9n [        R                  " SSS9n[        R
                  " [        SS9   X-
    S S S 5        g ! , (       d  f       g = f)	Nr   r   r   r   Mr(   r#   r$   )r   r   r/   r0   r,   r-   r   rJ   s     r   test_sub_periodrU   l   sI    

$
$ff%5[
ICIIf3'E	,F	; 
<	;	;s   A
A"c                     [         R                  " SSSS9n U R                  S5      n[         R                  R	                  SUR
                  5      n[        R                  " [        SS9   X-
    S S S 5        [        R                  " [        SS9   X!-
    S S S 5        g ! , (       d  f       N5= f! , (       d  f       g = f)	Nz
1677-09-22r9   r	   )periodsr#   nsl    @ k zOverflow in int64 additionr$   )	r/   
date_range	to_periodr0   _from_ordinalr#   r,   r-   OverflowError)dtipipers      r   test_sub_period_overflowr`   s   s    
--ac
:C	t	B
))
!
!&"''
2C	},H	I
 
J 
},H	I 
J	I 
J	I 
J	Is   +BB0
B-0
B>rK   hr(   )r   r   r   z	period[h]r   c                    [         R                  " [        R                  " / SQSS95      n[        R
                  " / SQ5      n[        R                  " [        SS9   UR
                  R                  X 5        S S S 5        UR                  X 5      nUR                  [        5      R                  X 5      n[        R                  " X45        g ! , (       d  f       NZ= f)Nr6   r   r   )TFTr#   r$   )r/   Seriesr   r   r   r   r,   r-   r   _wherewhereastypeobjectr   assert_series_equal)rK   sercondresr   s        r    test_where_different_freq_raisesrl      s     ))""#;;OC 88'(D	,F	;		% 
< ))D
 Czz&!''4H3) 
<	;s   C
Cc                  Z    [         R                  " SS/SS9n [        U 5      nSnX:X  d   eg )Nr   r   r   r   zF<PeriodArray>
['2000-01-01', '2001-01-01']
Length: 2, dtype: period[D]r   r   strr2   r   r   s      r   test_repr_smallrq      s8    

$
$ff%5[
ICXFR  r   c                  `    [         R                  " SS/S-  SS9n [        U 5      nSnX:X  d   eg )Nr   r   i  r   r   aM  <PeriodArray>
['2000-01-01', '2001-01-01', '2000-01-01', '2001-01-01', '2000-01-01',
 '2001-01-01', '2000-01-01', '2001-01-01', '2000-01-01', '2001-01-01',
 ...
 '2000-01-01', '2001-01-01', '2000-01-01', '2001-01-01', '2000-01-01',
 '2001-01-01', '2000-01-01', '2001-01-01', '2000-01-01', '2001-01-01']
Length: 1000, dtype: period[D]rn   rp   s      r   test_repr_largers      s?    

$
$ff%5%;;
OCXF
	)  r   )&numpyr   r,   pandas._libs.tslibsr   pandas._libs.tslibs.periodr   pandas.core.dtypes.baser   r
   pandas.core.dtypes.dtypesr   pandasr/   pandas._testing_testingr   pandas.core.arraysr   r   r!   r4   r=   r?   markparametrizer0   nanrG   rL   rO   rR   rU   r`   r   rl   rq   rs    r   r   <module>r      sa     $ < 9 1   *2= 
bii$m4
dT1aL!
bfftQl#	BIIfc*UGaK8YYvs#RYYvs%;RYYvs=ST!	

004$ 
		&s#""#;;O**&r   