
    d[x                    :   d dl mZ d dlmZmZ d dlZd dlZd dlZd dlm	Z	m
Z
 d dlZd dlmZ  ej        dd          d             Z G d	 d
          Z G d de          Z G d de          Z G d de          Z G d de          Z G d de          ZdS )    )annotations)datetime	timedeltaN)IS64is_platform_windowsTclass)autousescopec              #     K    j         }t          j        |j        |j        |j        g          } fd} j        j        }|j        s|j	        rd V  d S |D ]'} ||          st          d|j         d|           (d V  d S )Nc                r    | \  j         j        j        }t          fd|D                       S )Nc              3  N   K   | ]}|j         v o|j         v o|j         v V   d S Nname).0xdtypeklassmethods     _/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/indexing/test_coercion.py	<genexpr>z<check_comprehensiveness.<locals>.has_test.<locals>.<genexpr>#   sQ       
 
IJEQVODDFaf4D
 
 
 
 
 
    )nodesessionitemsany)combo	cls_funcsr   r   r   requests     @@@r   has_testz)check_comprehensiveness.<locals>.has_test    sa    $ufL(.	 
 
 
 
 
 
NW
 
 
 
 
 	
r   ztest method is not defined: z, )cls	itertoolsproductklassesdtypesr   configoptionlfkeywordAssertionError__name__)r   r!   combosr    optsr   s   `     r   check_comprehensivenessr.      s       +Cs{CJEEF
 
 
 
 
 > Dw $,  	  	 	E8E?? $J3<JJ5JJ  
 	r   c                  4    e Zd ZddgZg dZed             ZdS )CoercionBaseindexseries)	objectint64float64
complex128bool
datetime64datetime64tztimedelta64periodc                     t          |           r   NotImplementedErrorselfs    r   r   zCoercionBase.methodE   s    !$'''r   N)r+   
__module____qualname__r$   r%   propertyr    r   r   r0   r0   7   sJ        !G
 
 
F ( ( X( ( (r   r0   c                  \   e Zd ZU dZg Zded<   d Zd Zej	        
                    ddefdefd	efg          d
             Zej	        
                    ddej        fd	ej        fdefg          d             Zej	        
                    ddej        fdej        fdefg          d             Zej	                            d          d             Zej	                            d          d             Zej	                            d          d             Zej	                            d          d             Zej	                            d          d             Zej	                            d          d             Zej	                            d          d             ZdS )TestSetitemCoercionsetitemz	list[str]r$   c                    t          j        ddg          }t          |j                  |d d <   t          j        ddg          }t	          j        ||           d S )Na   )pdSerieslistvaluestmassert_series_equal)r@   serexpecteds      r   0test_setitem_series_no_coercion_from_values_listzDTestSetitemCoercion.test_setitem_series_no_coercion_from_values_listQ   sX    ia!!cj!!AAA9c1X&&
sH-----r   c                p   |                                 }d||<   t          j        g d|          }t          j        ||           |j        j        |k    sJ |                                 }d|j        |<   t          j        g d|          }t          j        ||           |j        j        |k    sJ dS )z-test index's coercion triggered by assign key   )rJ            rU   r1   N)copyrK   rL   rO   rP   r1   r   loc)r@   original_seriesloc_keyexpected_indexexpected_dtypetempexps          r    _assert_setitem_index_conversionz4TestSetitemCoercion._assert_setitem_index_conversionZ   s     ##%% Wi~>>>
tS)))z>1111##%%i~>>>
tS)))z>111111r   zval,exp_dtyper   rU   皙?c                   t          j        g dt          d                    }|j        j        t
          k    sJ |t          u rL|                                }d}t          j	        ||          5  d|d<   d d d            d S # 1 swxY w Y   d S t          j
        t          d          |gz             }|                     ||||           d S )NrJ   rV   rW   rX   abcdrY   z/index 5 is out of bounds for axis 0 with size 4)matchrU   )rK   rL   rM   r1   r   r3   
IndexErrorrZ   pytestraisesIndexrb   )r@   val	exp_dtypeobjr`   msg	exp_indexs          r   test_setitem_index_objectz-TestSetitemCoercion.test_setitem_index_objectn   s    iDLL999y&((((
""88::DCCy444  Q                  f!566I11#sIyQQQQQs   2BB	B	c                    t          j        g d          }|j        j        t          j        k    sJ t          j        dddd|g          }|                     ||||           d S )Nre   r   rJ   rV   rW   )rK   rL   r1   r   npr4   rk   rb   )r@   rl   rm   rn   rp   s        r   test_setitem_index_int64z,TestSetitemCoercion.test_setitem_index_int64~   sh     i%%y"(****HaAq#.//	--c3	9MMMMMr   gffffff@c                    t          j        g dg d          }|j        j        t          j        k    sJ t          j        dddd|g          }|                     ||||           d S )Nre   )rc    @@ffffff@rY   rc   rv   rw   rx   )rK   rL   r1   r   rs   r5   rk   rb   )r@   rl   rm   r   rn   rp   s         r   test_setitem_index_float64z.TestSetitemCoercion.test_setitem_index_float64   st     i,@,@,@AAAy"*,,,,Hc3S#677	--c3	9MMMMMr   Test not implementedreasonc                    t           r   r=   r?   s    r   test_setitem_series_periodz.TestSetitemCoercion.test_setitem_series_period       !!r   c                    t           r   r=   r?   s    r   test_setitem_index_complex128z1TestSetitemCoercion.test_setitem_index_complex128   r   r   c                    t           r   r=   r?   s    r   test_setitem_index_boolz+TestSetitemCoercion.test_setitem_index_bool   r   r   c                    t           r   r=   r?   s    r   test_setitem_index_datetime64z1TestSetitemCoercion.test_setitem_index_datetime64   r   r   c                    t           r   r=   r?   s    r   test_setitem_index_datetime64tzz3TestSetitemCoercion.test_setitem_index_datetime64tz   r   r   c                    t           r   r=   r?   s    r   test_setitem_index_timedelta64z2TestSetitemCoercion.test_setitem_index_timedelta64   r   r   c                    t           r   r=   r?   s    r   test_setitem_index_periodz-TestSetitemCoercion.test_setitem_index_period   r   r   N)r+   rA   rB   r   r$   __annotations__rS   rb   ri   markparametrizer3   rh   rq   rs   r4   r5   rt   ry   xfailr~   r   r   r   r   r   r   rD   r   r   rF   rF   J   s        F G. . .2 2 2( [3-!Z3-H R R R [1bh-#rz):S&MJ N N N [1bj/C+<sFmL N N N [455" " 65" [455" " 65" [455" " 65" [455" " 65" [455" " 65" [455" " 65" [455" " 65" " "r   rF   c            	         e Zd ZdgZdZd Zej                            ddde	fdde	fdde	fdde	fg          d	             Z
ej                            dd
ddej        fdde	fdde	fg          d             Zej                            ddddej        fdde	fdde	fg          d             Zej                            d ej        d          df ej        dd          dfgddg          ej                            d ej        d           ej        dd          dg          d                         Zd Zej                            d ej        dd          ddf ej        d           ej        d          e	fdde	fdde	fg          d             Zej                            d !          d"             Zej                            d !          d#             Zd$S )%TestInsertIndexCoercionr1   insertc                    |                                 }|                    d|          }t          j        ||           |j        |k    sJ dS )z!test coercion triggered by insertrJ   N)rZ   r   rO   assert_index_equalr   r@   originalvaluerR   r_   targetress          r   _assert_insert_conversionz1TestInsertIndexCoercion._assert_insert_conversion   sN    mmAu%%
c8,,,yN******r   z"insert, coerced_val, coerced_dtyperJ   rc   Fr   c                    t          j        t          d                    }|j        t          k    sJ t          j        d|dddg          }|                     ||||           d S )Nrf   rI   bcd)rK   rk   rM   r   r3   r   )r@   r   coerced_valcoerced_dtypern   ra   s         r   test_insert_index_objectz0TestInsertIndexCoercion.test_insert_index_object   sf     htF||$$yF""""h[#sC899&&sFCGGGGGr   )rJ   rJ   Nc                    |}t          j        g d|          }||n|}t          j        d|dddg|          }|                     ||||           d S )Nre   r   rJ   rV   rW   rX   rK   rk   r   )r@   any_int_numpy_dtyper   r   r   r   rn   ra   s           r   test_insert_int_indexz-TestInsertIndexCoercion.test_insert_int_index   sn     $h|||5111)6)Bh;1a0FFF&&sFCGGGGGr   )rJ         ?Nc                    |}t          j        g d|          }||n|}t          j        d|dddg|          }|                     ||||           d S )N)r          @      @      @r   r   r   r   r   r   )r@   float_numpy_dtyper   r   r   r   rn   ra   s           r   test_insert_float_indexz/TestInsertIndexCoercion.test_insert_float_index   sq     "h+++5999)6)Bh[#sC8NNN&&sFCGGGGGr   fill_val,exp_dtype
2012-01-01datetime64[ns]
US/Easterntzdatetime64[ns, US/Eastern]r8   r9   idsinsert_value
Asia/Tokyoc                   t          j        g d|j                  }|j        |k    sJ t          j        d|                                dddg|j                  }|                     ||||           |j        rt          j        d          }|                    d|          }|                    t                                        d|          }|j        t          k    sJ t          j        ||           t          j        dd	          }|                    d|          }|                    d|                    |j        j                            }|j        |j        k    sJ t          j        ||           nt          j        dd	          }|                    d|          }|                    t                                        d|          }|j        t          k    sJ t          j        ||           d}	|                    d|	          }|                    t                                        d|	          }|d         |	k    sJ |j        t          k    sJ t          j        ||           d S )
N)
2011-01-01
2011-01-02
2011-01-03
2011-01-04r   r   r   r   r   r   rJ   r   )rK   DatetimeIndexr   r   dater   	Timestampr   astyper3   rO   r   
tz_convert)
r@   fill_valrm   r   rn   ra   tsresultrR   items
             r   test_insert_index_datetimesz3TestInsertIndexCoercion.test_insert_index_datetimes   s]    DDD
 
 
 yI%%%%8==??L,U{
 
 
 	&&sHc9EEE; 	4l++BZZ2&&Fzz&))00B77H>V++++!&(333l|<<<BZZ2&&Fzz!R]]39<%@%@AAH>SY....!&(3333 l|<<<BZZ2&&Fzz&))00B77H>V++++!&(333At$$::f%%,,Q55{d""""~''''
fh/////r   c                   t          j        g d          }|j        dk    sJ t          j        g d          }|                     |t          j        d          |d           t          j        d          dfD ]m}|                    d|          }|                    t                                        d|          }|j        t          k    sJ t          j
        ||           nd S )N)1 day2 day3 day4 daytimedelta64[ns])r   10 dayr   r   r   r   r   rJ   )rK   TimedeltaIndexr   r   	Timedeltar   r   r   r3   rO   r   )r@   rn   ra   r   r   rR   s         r   test_insert_index_timedelta64z5TestInsertIndexCoercion.test_insert_index_timedelta64&  s     D D DEEy-----  N N NOO&&h''.?	
 	
 	
 \,//3 	4 	4DZZ4((Fzz&))00D99H>V++++!&(3333		4 	4r   z2012-01Mfreq	period[M]c                   t          j        g dd          }|j        dk    sJ t          j        dd          |t          j        dd          t          j        dd          t          j        dd          g}t	          |t           j                  rUt          j        |d          }|                     ||||           |                     |t          |          ||           d S |                    d	|          }|                    t                                        d	|          }t          j        ||           t	          |t           j                  su|                    d	t          |                    }|                    t                                        d	t          |                    }t          j        ||           d S d S )
N)2011-012011-022011-032011-04r   r   r   r   r   r   r   r   )rK   PeriodIndexr   Period
isinstancer   strr   r   r3   rO   r   r   )	r@   r   r   r   rn   datara   r   rR   s	            r   test_insert_index_periodz0TestInsertIndexCoercion.test_insert_index_period6  s    nIIIPSTTTyK'''' Iic***Iic***Iic***Iic***
 fbi(( 	8.C000C**3]KKK **3FS-PPPPP ZZ6**Fzz&))00F;;H!&(333 fbl33 8As6{{33::f--44QFDD%fh77777	8 8r   rz   r{   c                    t           r   r=   r?   s    r   test_insert_index_complex128z4TestInsertIndexCoercion.test_insert_index_complex128^  r   r   c                    t           r   r=   r?   s    r   test_insert_index_boolz.TestInsertIndexCoercion.test_insert_index_boolb  r   r   N)r+   rA   rB   r$   r   r   ri   r   r   r3   r   rs   r5   r   r   rK   r   r   r   r   r   r   r   r   rD   r   r   r   r      s       iGF+ + + [,6N#vE6"#v		
 H H H [,#rz"E6"#v		
 H H H [,#rz"E6"#v		
 H H H [R\,'')9:R\,<888:VW	
 >*    [	l	#	#\R\,<%P%P%PRST (0 (0	  (0T4 4 4  [,RYys+++YDR\,''l)C)CVL6N#v		
 8 8 8> [455" " 65" [455" " 65" " "r   r   c            	         e Zd ZdZ ej        g d          Zd Zd Zd Z	e
j                            ddefdefd	efd
efg          d             Ze
j                            ddej        fdej        fd	ej        fd
efg          d             Ze
j                            ddej        fdej        fd	ej        fd
efg          d             Ze
j                            ddej        fdej        fd	ej        fd
efg          d             Ze
j                            ddefdefd	efd
ej        fg          d             Ze
j                            d ej        d          df ej        dd          efgddg          d             Ze
j                            d          d             Ze
j                            d          d             Ze
j                            d          d             Ze
j                            d          d             Ze
j                            d ej        d !           e d !           ej!        d d"          g          d#             Z"d$ Z#d%S )&TestWhereCoercionwhereTFTFc                    |                                 }|                    ||          }t          j        ||           |j        |k    sJ dS )z test coercion triggered by whereN)rZ   r   rO   assert_equalr   )r@   r   condrN   rR   r_   r   r   s           r   _assert_where_conversionz*TestWhereCoercion._assert_where_conversionk  sO     ll4((
X&&&yN******r   c                    du r |g d          }nOt          t          t          j        f          rt	          j        d          }n |fddD                       } ||d         |d         |d	         |d
         g|          }||fS )NT)TFTTrX   periodsc              3  "   K   | ]	}|z  V  
d S r   rD   )r   r   r   s     r   r   z3TestWhereCoercion._construct_exp.<locals>.<genexpr>z  s'      >>A1x<>>>>>>r   )rU            r   rJ   rV   rW   r   )r   r   rs   r8   rK   
date_range)r@   rn   r   r   rm   rN   ra   s      `   r   _construct_expz TestWhereCoercion._construct_expt  s    tU44455FF8R]";<< 	?]8Q777FFU>>>>>>>>>FeSVVAYAq	:)LLLs{r   c                     || j                   } ||d         ||d         |g|          }|                     |||||           |                     ||||          \  }}|                     |||||           d S )Nr   rV   r   )_condr   r   )r@   rn   r   r   rm   r   ra   rN   s           r   	_run_testzTestWhereCoercion._run_test  s    uTZ  eSVXs1vx8	JJJ%%c43	JJJ))#uh	JJ%%c4iHHHHHr   r   rJ   rc         ?      ?Tc                    |} |t          d                    }|j        t          k    sJ |                     ||||           d S )Nrf   )rM   r   r3   r   r@   index_or_seriesr   rm   r   rn   s         r   test_where_objectz#TestWhereCoercion.test_where_object  sO    
  eDLL!!yF""""sHeY77777r   c                    |} |g d          }|j         t          j        k    sJ |                     ||||           d S )Nre   )r   rs   r4   r   r@   r   r   rm   r   r   rn   s          r   test_where_int64z"TestWhereCoercion.test_where_int64  sO    
  eLLL!!yBH$$$$sHeY77777r   zfill_val, exp_dtypec                    |} |g d          }|j         t          j        k    sJ |                     ||||           d S )N)rc   皙@ffffff
@皙@)r   rs   r5   r   r   s          r   test_where_float64z$TestWhereCoercion.test_where_float64  sR    
  e((())yBJ&&&&sHeY77777r   c                    |} |g dt           j                  }|j        t           j        k    sJ |                     ||||           d S )N)r          @       @      @      @      @      @r   )rs   r6   r   r   r   s         r   test_where_complex128z'TestWhereCoercion.test_where_complex128  sY      e444BMJJJyBM))))sHeY77777r   c                    t           j        } |g d          }|j        t          j        k    sJ |                     ||||           d S )Nr   )rK   rL   r   rs   bool_r   )r@   r   rm   r   rn   s        r   test_where_series_boolz(TestWhereCoercion.test_where_series_bool  sT    
 	e...//yBH$$$$sHeY77777r   r   r   r   r   r8   r9   r   c                   |} |t          j        ddd                              d                     }|j        dk    sJ |}|dk    rF||                                |                                fD ]}|                     ||||           d S ||                                fD ]}|                     ||||           d S )Nr   rX   Dr   r   r   )rK   r   
_with_freqr   to_pydatetimeto_datetime64r   )r@   r   r   rm   r   rn   fvscalars           r   test_where_datetime64z'TestWhereCoercion.test_where_datetime64  s      eBM,DDDOOPTUUVVy,,,,,(((r//1123C3C3E3EF > >sFE9====> > r//112 @ @sHeY????@ @r   rz   r{   c                    t           r   r=   r?   s    r   test_where_index_complex128z-TestWhereCoercion.test_where_index_complex128  r   r   c                    t           r   r=   r?   s    r   test_where_index_boolz'TestWhereCoercion.test_where_index_bool  r   r   c                    t           r   r=   r?   s    r   test_where_series_timedelta64z/TestWhereCoercion.test_where_series_timedelta64  r   r   c                    t           r   r=   r?   s    r   test_where_series_periodz*TestWhereCoercion.test_where_series_period  r   r   r   	   daysr  c                   t          j        dd          }t          j        g d          }t          j        d||dg          }|                    ||          }t          j        ||           t          j        dd          }t          j	        |d         |||d	         gt          
          }|d         |u sJ |                    ||          }t          j        ||           d S )Nz1 DayrX   r   )TFFTz4 DaysNaTnsr   rW   r   rJ   )rK   timedelta_rangers   arrayr   r   rO   r   r8   rk   r3   )r@   r   tdir   rR   r   dtnats          r   test_where_index_timedelta64z.TestWhereCoercion.test_where_index_timedelta64  s      !444x22233$gueX%FGG4''
fh/// eT**8SVUE3q6:&III{e####4''
fh/////r   c                   t          j        ddd          }|                    d          }t          j        g d          }|d         |j        dz  z   }t          j        ||d	         |g          }|                    ||          }t          j	        ||           t          j
        ||j        dz  z   t          
          }|                    ||          }t          j        |d         |d	         |d         g          }t          j	        ||           t          j        d          }t          j        ||d	         |gt          
          }|                    ||          }t          j	        ||           t          j        dd          }	t          j        |	|d	         |	gt          
          }|                    ||	          }t          j	        ||           d S )N
2016-01-01rW   QSr  Q)FTF
   rJ   r   r   rV   rX   r   z
2020-04-21r  )rK   r   	to_periodrs   r&  r   r   r   rO   r   asarrayr3   r   rk   r   )
r@   dtipir   r   rR   r   othertdpers
             r   test_where_index_periodz)TestWhereCoercion.test_where_index_period  s   mL!$???]]3x,,,-- 22%>5"Q%"788$&&
fh/// 
2",F;;;$&&>58RUE!H"=>>
fh/// \q!!!8RAO6:::$##
fh///ic**8S"Q%-V<<<$$$
fh/////r   N)$r+   rA   rB   r   rs   r&  r   r   r   r   ri   r   r   r3   r   r4   r5   r6   r   r  r
  r  r  rK   r   r  r   r  r  r  r  r   r   r:   r)  r7  rD   r   r   r   r   g  s       FBH///00E+ + +	 	 	I I I [
VsFmff%5f~F 8 8	 8 [
RXbj)FBM+BT6NS 8 8	 8 [
RZ3
+fbm-DtVnU 8 8	 8 ["- R]#6N		
 8 8 8 [
VsFmff%5bh7GH 8 8	 8 [R\,'')9:R\,<888&A	
 >*   @ @ @ [455" " 65" [455" " 65" [455" " 65" [455" " 65" [,",A&&&		q(9(9(9>2>!S;Q;QR 0 0 0 0 0 0 0 0r   r   c                     e Zd ZdZej                            d          d             Zd Zej        	                    dde
fde
fd	e
fd
e
fg          d             Zej        	                    ddej        fdej        fd	ej        fd
e
fg          d             Zej        	                    ddej        fdej        fd	ej        fd
e
fg          d             Zej        	                    d ej        d          df ej        dd          e
fde
fde
fgg d          d             Zej        	                    d ej        dd          df ej        d          e
f ej        dd          dfde
fde
fg          d             Zej        	                    dddd	d
 ej        ddd           ej        dd           ej        d           ej        d           ej        dd           g	          d!             Zej                            d          d"             Zej                            d          d#             Zej                            d          d$             Zej                            d          d%             Zej                            d          d&             Zej        	                    dddd	d
 ej        ddd           ej        dd           ej        d           ej        d           ej        dd'          g	          d(             Zej                            d          d)             Zej                            d          d*             Z d+S ),TestFillnaSeriesCoercionfillnarz   r{   c                    t           r   r=   r?   s    r   test_has_comprehensive_testsz5TestFillnaSeriesCoercion.test_has_comprehensive_tests  r   r   c                    |                                 }|                    |          }t          j        ||           |j        |k    sJ dS )z!test coercion triggered by fillnaN)rZ   r:  rO   r   r   r   s          r   _assert_fillna_conversionz2TestFillnaSeriesCoercion._assert_fillna_conversion#  sK    mmE""
X&&&yN******r   zfill_val, fill_dtyperJ   rc   r   Tc                    |} |dt           j        ddg          }|j        t          k    sJ  |d|ddg          }|                     ||||           d S )NrI   r   r   )rs   nanr   r3   r>  r@   r   r   
fill_dtyper   rn   ra   s          r   test_fillna_objectz+TestFillnaSeriesCoercion.test_fillna_object*  sn    
  eS"&#s+,,yF""""eS(C-..&&sHc:FFFFFr   zfill_val,fill_dtypec                    |} |dt           j        ddg          }|j        t           j        k    sJ  |d|ddg          }|                     ||||           d S )Nrc   r  r  )rs   r@  r   r5   r>  rA  s          r   test_fillna_float64z,TestFillnaSeriesCoercion.test_fillna_float646  sp    
  eS"&#s+,,yBJ&&&&eS(C-..&&sHc:FFFFFr   c                    |} |dt           j        ddgt           j                  }|j        t           j        k    sJ  |d|ddg          }|                     ||||           d S )Nr   r  r	  r   )rs   r@  r6   r   r>  rA  s          r   test_fillna_complex128z/TestFillnaSeriesCoercion.test_fillna_complex128B  sw      eVRVVV4BMJJJyBM))))eVXvv677&&sHc:FFFFFr   r   r   r   r   r   )r8   r9   r3   r3   r   c                |   |} |t          j        d          t           j        t          j        d          t          j        d          g          }|j        dk    sJ  |t          j        d          |t          j        d          t          j        d          g          }|                     ||||           d S )Nr   r   r   r   )rK   r   r#  r   r>  rA  s          r   test_fillna_datetimez-TestFillnaSeriesCoercion.test_fillna_datetimeS  s      e\**\**\**	
 
 y,,,,,e\**\**\**	
 
 	&&sHc:FFFFFr   r   r   c           	        |}d} |t          j        d|          t           j        t          j        d|          t          j        d|          g          }|j        dk    sJ t	          |dd           |}n|                    |          } |t          j        d|          |t          j        d|          t          j        d|          g          }|                     ||||           d S )Nr   r   r   r   r   r   r   )rK   r   r#  r   getattrr   r>  )	r@   r   r   rB  r   r   rn   r  ra   s	            r   test_fillna_datetime64tzz1TestFillnaSeriesCoercion.test_fillna_datetime64tzs  s     e\b111\b111\b111	
 
 y888888T4((0BB$$R((Be\b111\b111\b111	
 
 	&&sHc:FFFFFr   r   rV   leftclosedr   r+  r  c                d   t          j        ddd                              dt          j                  }t          |j        t           j                  sJ  ||          } ||d         ||d         |d         |d	         gt          
          }t          }| 	                    ||||           d S )Nr   g      @rightrN  rJ   r   rV   rW   rX   r   )
rK   interval_ranger   rs   r@  r   r   IntervalDtyper3   r>  )r@   r   r   iirn   ra   rB  s          r   test_fillna_intervalz-TestFillnaSeriesCoercion.test_fillna_interval  s     sC888??26JJ"(B$455555ob!!or!uh1r!ubeDFSSS
&&sHc:FFFFFr   c                    t           r   r=   r?   s    r   test_fillna_series_int64z1TestFillnaSeriesCoercion.test_fillna_series_int64  r   r   c                    t           r   r=   r?   s    r   test_fillna_index_int64z0TestFillnaSeriesCoercion.test_fillna_index_int64  r   r   c                    t           r   r=   r?   s    r   test_fillna_series_boolz0TestFillnaSeriesCoercion.test_fillna_series_bool  r   r   c                    t           r   r=   r?   s    r   test_fillna_index_boolz/TestFillnaSeriesCoercion.test_fillna_index_bool  r   r   c                    t           r   r=   r?   s    r   test_fillna_series_timedelta64z7TestFillnaSeriesCoercion.test_fillna_series_timedelta64  r   r   Wc                d   t          j        ddd                              dt           j                  }t	          |j        t           j                  sJ  ||          } ||d         ||d         |d         |d         gt          	          }t          }|                     ||||           d S )
Nr+  rX   r  r  rJ   r   rV   rW   r   )	rK   period_ranger   r#  r   r   PeriodDtyper3   r>  )r@   r   r   r3  rn   ra   rB  s          r   test_fillna_series_periodz2TestFillnaSeriesCoercion.test_fillna_series_period  s     _\13???FFq"&QQ"(BN33333ob!!or!uh1r!ubeDFSSS
&&sHc:FFFFFr   c                    t           r   r=   r?   s    r   test_fillna_index_timedelta64z6TestFillnaSeriesCoercion.test_fillna_index_timedelta64  r   r   c                    t           r   r=   r?   s    r   test_fillna_index_periodz1TestFillnaSeriesCoercion.test_fillna_index_period  r   r   N)!r+   rA   rB   r   ri   r   r   r<  r>  r   r3   rC  rs   r5   r6   rE  rG  rK   r   rI  rL  Intervalr   r   rU  rW  rY  r[  r]  r_  rd  rf  rh  rD   r   r   r9  r9    s        F[455" " 65"+ + + [
VsFmff%5f~F G G	 G [
RZ3
+fbm-DtVnU G G	 G ["- R]#6N		
 G G G [R\,'')9:R\,<888&AK&M		
 ?>>  	 	G G	 	G, [R\,<888:VWR\,''0R\,<888:VWK&M	

 
G G
 
G8 [BK1V,,,BL,777BL&&BLa   BIlC((
	
 G G G [455" " 65" [455" " 65" [455" " 65" [455" " 65" [455" " 65" [BK1V,,,BL,777BL&&BLa   BIlC((
	
 G G G [455" " 65" [455" " 65" " "r   r9  c                     e Zd ZU dgZdZi Zded<   ddged<   dd	ged
<   ddged<   ddged<   ddged<    ej        d           ej        d          ged<   dD ]/Z	de	 dZ
 ej        de	           ej        de	          gee
<   0 ej        d           ej        d          ged<    ej        ddg          d              Z ej        g d!          d"             Z ej        g d!g d#$          d%             Zej        d&             Zd' Zej                            d(g d)d*          ej                            d+d,d-gd*          d.                         Zej                            d(g d/d*          ej                            d+g d/d*          d0                         Zej                            d12          d3             Zd4S )5TestReplaceSeriesCoercionr2   replacezdict[str, list]reprI   r   r3   rX   rU   r4   rc   r  r5   r   r  r6   TFr7   r   r   r   )UTCr   zdatetime64[ns, ]r   r   r   r   dict)paramsc                    |j         S r   paramr@   r   s     r   howzTestReplaceSeriesCoercion.how  s
    }r   )	r3   r4   r5   r6   r7   r   datetime64[ns, UTC]r   r   c                    |j         S r   rs  ru  s     r   from_keyz"TestReplaceSeriesCoercion.from_key  s     }r   )	r3   r4   r5   r6   r7   r8   r9   r9   r:   )rq  r   c                    |j         S r   rs  ru  s     r   to_keyz TestReplaceSeriesCoercion.to_key  s    2 }r   c                    |dk    r4t          t          | j        |         | j        |                             }n:|dk    r-t          j        | j        |         | j        |                   }nt
          |S )z9
        Object we will pass to `Series.replace`
        rp  r2   rY   )rp  ziprm  rK   rL   
ValueError)r@   rv  ry  r{  replacers        r   r  z"TestReplaceSeriesCoercion.replacer,  sl    
 &==C 2DHV4DEEFFHHH__y&!1(9KLLLHHr   c                x   t          j        ddgd          }t          j        | j        |         |d          }|j        |k    sJ |                    d          r|                    d          rd S |dv rd S |                    |          }|d	k    r|d
v s
|dk    rW|dv rSt          rt                      rt          j
        d| d|            t          j        | j        |         |d|          }n/t          j        | j        |         |d          }|j        |k    sJ t          j        ||           d S )NrW   rX   xxxr   yyyr1   r   r   )r   rw  r5   r4   r6   )r4   r5   z32-bit platform buggy: z -> )r1   r   r   )rK   rk   rL   rm  r   
startswithrl  r   r   ri   skiprO   rP   	r@   rv  r{  ry  r  r1   rn   r   ra   s	            r   test_replace_seriesz-TestReplaceSeriesCoercion.test_replace_series9  sn   !Qe,,,i*%eDDDyH$$$$z** 	v/@/@/L/L 	FNNNFX&&	!!f&9&9$$3G)G)G N.00 NLhLLFLLMMM )DHV,EXVVVCC )DHV,EFFFC9&&&&
vs+++++r   r{  )r   r7   r3   r6   r5   r4   )indirectry  rw  r   c                F   t          j        ddgd          }t          j        | j        |         |d          }|j        |k    sJ |                    |          }t          j        | j        |         |d          }|j        |k    sJ t          j        ||           d S NrW   rX   xyzr   r  r  )rK   rk   rL   rm  r   rl  rO   rP   r  s	            r   test_replace_series_datetime_tzz9TestReplaceSeriesCoercion.test_replace_series_datetime_tzV  s     !Qe,,,i*%eDDDyH$$$$X&&i(EBBByF""""
vs+++++r   )r   rw  r   c                   t          j        ddgd          }t          j        | j        |         |d          }|j        |k    sJ |                    |          }t          j        | j        |         |d          }t          |j        t           j                  r:t          |j        t           j                  r|                    |j                  }n|j        |k    sJ t          j
        ||           d S r  )rK   rk   rL   rm  r   rl  r   DatetimeTZDtyper   rO   rP   r  s	            r   %test_replace_series_datetime_datetimez?TestReplaceSeriesCoercion.test_replace_series_datetime_datetimej  s     !Qe,,,i*%eDDDyH$$$$X&&i(EBBBci!344 	'Ir):
 :
 	' **SY''CC9&&&&
vs+++++r   rz   r{   c                    t           r   r=   r?   s    r   test_replace_series_periodz4TestReplaceSeriesCoercion.test_replace_series_period  r   r   N)r+   rA   rB   r$   r   rm  r   rK   r   r   keyr   ri   fixturerv  ry  r{  r  r  r   r   r  r  r   r  rD   r   r   rk  rk    s'        jGFC#JCMq6CL3ZC	N(C-CK)R\,77l9S9STC# 
 
%%%%BL"---BL"---
C
 +bl733\R\'5J5JKCV^FH-...  /. V^

 

 

     V^

 

 



 

 

  0 1 0 ^
 
 ^
, , ,: [OOO   
 [*,HITX   
, 
,  
, [OOO   
 [OOO   
, ,  ,$ [455" " 65" " "r   rk  )
__future__r   r   r   r"   numpyrs   ri   pandas.compatr   r   pandasrK   pandas._testing_testingrO   r  r.   r0   rF   r   r   r9  rk  rD   r   r   <module>r     s	   " " " " " "                       
           G,,,  -,:( ( ( ( ( ( ( (&b" b" b" b" b", b" b" b"Ju" u" u" u" u"l u" u" u"pp0 p0 p0 p0 p0 p0 p0 p0fJ" J" J" J" J"| J" J" J"Za" a" a" a" a" a" a" a" a" a"r   