
    PiWy                       d dl mZ d dlmZmZ d dlZd dlZd dlmZm	Z	 d dl
mZ d dlZd dlm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_windows)np_version_gt2c                  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          |           NNotImplementedErrorselfs    w/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/indexing/test_coercion.pymethodzCoercionBase.method'   s    !$'''    N)__name__
__module____qualname__klassesdtypespropertyr    r   r   r
   r
      sJ        !G
 
 
F ( ( X( ( (r   r
   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_list3   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   )r+            r6   r   N)copyr,   r-   r0   r1   r   dtypeloc)r   original_seriesloc_keyexpected_indexexpected_dtypetempexps          r    _assert_setitem_index_conversionz4TestSetitemCoercion._assert_setitem_index_conversion<   s     ##%% Wi~>>>
tS)))z>1111##%%i~>>>
tS)))z>111111r   zval,exp_dtypexr6   皙?c                8   t          j        g dt          j        t          d          t                              }|j        j        t          k    sJ t          j        g t          d          |t                    }|                     ||||           d S )Nr+   r7   r8   r9   abcdr<   r:   )r,   r-   Indexr.   r   r   r<   rD   r   val	exp_dtypeobj	exp_indexs        r   test_setitem_index_objectz-TestSetitemCoercion.test_setitem_index_objectP   s     iBHT&\\,P,P,PQQQy&((((H1tF||1S1@@@	--c3	9MMMMMr   c                    t          j        g d          }|j        j        t          j        k    sJ t          j        dddd|g          }|                     ||||           d S )NrH   r   r+   r7   r8   )r,   r-   r   r<   npr   rK   rD   rL   s        r   test_setitem_index_int64z,TestSetitemCoercion.test_setitem_index_int64Z   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 )NrH   )rF    @@ffffff@r:   rF   rV   rW   rX   )r,   r-   r   r<   rS   r   rK   rD   )r   rM   rN   requestrO   rP   s         r   test_setitem_index_float64z.TestSetitemCoercion.test_setitem_index_float64d   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_periodn       !!r   c                    t           r   r   r   s    r   test_setitem_index_complex128z1TestSetitemCoercion.test_setitem_index_complex128r   r`   r   c                    t           r   r   r   s    r   test_setitem_index_boolz+TestSetitemCoercion.test_setitem_index_boolv   r`   r   c                    t           r   r   r   s    r   test_setitem_index_datetime64z1TestSetitemCoercion.test_setitem_index_datetime64z   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   r    r!   r   r"   __annotations__r4   rD   pytestmarkparametrizer   
IndexErrorrQ   rS   r   r   rT   rZ   xfailr_   rb   rd   rf   rh   rj   rl   r%   r   r   r'   r'   ,   s        F G. . .2 2 2( [3-!Z3-H N N N [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   r'   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          df ej        dd                              d          dfgddg          ej                            d ej        d                              d           ej        dd                              d          dg          d                         Zd Zej                            d ej        dd          ddf ej        d                              d           ej        d                              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 )&TestInsertIndexCoercionr   insertc                    |                                 }|                    d|          }t          j        ||           |j        |k    sJ dS )z!test coercion triggered by insertr+   N)r;   ru   r0   assert_index_equalr<   r   originalvaluer3   rA   targetress          r   _assert_insert_conversionz1TestInsertIndexCoercion._assert_insert_conversion   sN    mmAu%%
c8,,,yN******r   z"insert, coerced_val, coerced_dtyper+   rF   FrE   c                    t          j        t          d          t                    }|j        t          k    sJ t          j        d|dddgt                    }|                     ||||           d S )NrI   rJ   r*   bcd)r,   rK   r.   r   r<   r}   )r   ru   coerced_valcoerced_dtyperO   rC   s         r   test_insert_index_objectz0TestInsertIndexCoercion.test_insert_index_object   sp     htF||6222yF""""h[#sC8GGG&&sFCGGGGGr   )r+   r+   Nc                    |}t          j        g d|          }||n|}t          j        d|dddg|          }|                     ||||           d S )NrH   rJ   r+   r7   r8   r9   )r,   rK   r}   )r   any_int_numpy_dtyperu   r   r   r<   rO   rC   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   )r+         ?Nc                    |}t          j        g d|          }||n|}t          r|dk    r|dk    rt          j        }t          j        d|dddg|          }|                     ||||           d S )	N)r          @      @      @rJ   float32rF   r   r   r   r   )r,   rK   r   rS   r   r}   )r   float_numpy_dtyperu   r   r   r<   rO   rC   s           r   test_insert_float_indexz/TestInsertIndexCoercion.test_insert_float_index   s     "h+++5999)6)B 	'ey00[C5G5G JMh[#sC8NNN&&sFCGGGGGr   fill_val,exp_dtype
2012-01-01sdatetime64[ns]
US/Easterntzdatetime64[ns, US/Eastern]r   r   idsinsert_value
Asia/Tokyoc                   t          j        g d|j                                      d          }|j        |k    sJ t          j        d|                                dddg|j                                      d          }|                     ||||           |j        r,t          j        d                              d	          }|                    d
|          }|	                    t                                        d
|          }|j        t          k    sJ t          j        ||           t          j        dd                              d	          }|                    d
|          }|                    d
|                    |j        j                            }|j        |j        k    sJ t          j        ||           nt          j        d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   nsr   r   r   r   r   r   r+   r   )r,   DatetimeIndexr   as_unitr<   dater}   	Timestampru   astyper   r0   rw   
tz_convert)
r   fill_valrN   r   rO   rC   tsresultr3   items
             r   test_insert_index_datetimesz3TestInsertIndexCoercion.test_insert_index_datetimes   s   ( DDD
 
 

'$-- 	 yI%%%%8==??L,U{
 
 
 '$-- 	 	&&sHc9EEE; 	4l++33C88BZZ2&&Fzz&))00B77H>V++++!&(333l|<<<DDSIIBZZ2&&Fzz!R]]39<%@%@AAH>SY....!&(3333 l|<<<DDSIIB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          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[us])r   10 dayr   r   r   r   r   r   r+   )r,   TimedeltaIndexr<   r}   	Timedeltar   r   ru   r   r   r0   rw   )r   rO   rC   r   r   r3   s         r   test_insert_index_timedelta64z5TestInsertIndexCoercion.test_insert_index_timedelta64  s    D D DEEy-----  N N NOO&&h''.?	
 	
 	
 \,//77<<a@ 	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   )r,   PeriodIndexr<   Period
isinstancer}   strru   r   r   r0   rw   r   )	r   ru   r   r   rO   datarC   r   r3   s	            r   test_insert_index_periodz0TestInsertIndexCoercion.test_insert_index_period  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   r[   r\   c                    t           r   r   r   s    r   test_insert_index_complex128z4TestInsertIndexCoercion.test_insert_index_complex128K  r`   r   c                    t           r   r   r   s    r   test_insert_index_boolz.TestInsertIndexCoercion.test_insert_index_boolO  r`   r   N)r   r    r!   r"   r   r}   rn   ro   rp   r   r   rS   r   r   r   r,   r   r   r   r   r   r   rr   r   r   r%   r   r   rt   rt      sh       iGF+ + + [,6N#vE6"#v		
 H H H [,#rz"E6"#v		
 H H H [, #rz"E6"#v	

 
H H
 
H [R\,''//446FG\l;;;CCCHH,	
 >*  
 
 [BL&&..s33BL,777??DD	
 (0 (0 
 
&(0T4 4 4  [,RYys+++YD\**22377\**22377
 6N#v		
 8 8 8> [455" " 65" [455" " 65" " "r   rt   c            	      Z   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          df ej        d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!"                              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)r;   r   r0   assert_equalr<   )r   ry   condr/   r3   rA   r{   r|   s           r   _assert_where_conversionz*TestWhereCoercion._assert_where_conversionX  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)TFTTr9   periodsc              3  "   K   | ]	}|z  V  
d S r   r%   ).0rE   r   s     r   	<genexpr>z3TestWhereCoercion._construct_exp.<locals>.<genexpr>g  s'      >>A1x<>>>>>>r   )r6            r   r+   r7   r8   rJ   )r   r   rS   r   r,   
date_range)r   rO   klassr   rN   r/   rC   s      `   r   _construct_expz TestWhereCoercion._construct_expa  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   r7   rJ   )_condr   r   )r   rO   r   r   rN   r   rC   r/   s           r   	_run_testzTestWhereCoercion._run_testl  s    uTZ  eSVXs1vx8	JJJ%%c43	JJJ))#uh	JJ%%c4iHHHHHr   r   r+   rF         ?      ?Tc                    |} |t          d          t                    }|j        t          k    sJ |                     ||||           d S )NrI   rJ   )r.   r   r<   r   r   index_or_seriesr   rN   r   rO   s         r   test_where_objectz#TestWhereCoercion.test_where_objectu  sT    
  eDLL///yF""""sHeY77777r   c                    |} |g d          }|j         t          j        k    sJ |                     ||||           d S )NrH   )r<   rS   r   r   r   r   r   rN   rY   r   rO   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)rF   皙@ffffff
@皙@)r<   rS   r   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          @       @      @      @      @      @rJ   )rS   r   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                    |} |g d          }|j         t          j        k    sJ |                     ||||           d S )Nr   )r<   rS   bool_r   r   s         r   test_where_series_boolz(TestWhereCoercion.test_where_series_bool  sR    
  e...//yBH$$$$sHeY77777r   r   r   r   r   r   r   r   r   c                   |} |t          j        dddd                              d                     }|j        dk    sJ |}|dk    rF||                                |                                fD ]}|                     ||||           d S ||                                fD ]}|                     ||||           d S )Nr   r9   Dr   )r   r   unitr   )r,   r   
_with_freqr<   to_pydatetimeto_datetime64r   )r   r   r   rN   r   rO   fvscalars           r   test_where_datetime64z'TestWhereCoercion.test_where_datetime64  s     eM,$GGGRRSWXX
 
 y,,,,,(((r//1123C3C3E3EF > >sFE9====> > r//112 @ @sHeY????@ @r   r[   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   rz   	   daysusr   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 Dayr9   r   )TFFTz4 DaysNaTr   r   r8   rJ   r+   )r,   timedelta_rangerS   arrayr   r   r0   rw   r   rK   r   )r   rz   tdir   r3   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-01r8   QSr   r   Q)FTF
   r+   rJ   r   r7   r9   r  z
2020-04-21r   )r,   r   	to_periodrS   r  r   r   r   r0   rw   asarrayr   r   rK   r   )
r   dtipir   rz   r3   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   r    r!   r   rS   r  r   r   r   r   rn   ro   rp   r   r   r   r   r   r   r   r   r   r   r,   r   r   r   rr   r   r  r  r  r   r   r   r  r   r%   r   r   r   r   T  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\,''//446FGR\,<888@@EEvN	
 >*   @ @ @" [455" " 65" [455" " 65" [455" " 65" [455" " 65" [	1				%	%d	+	+YYA->->->qRU@V@VW 0 0	 0 0 0 0 0 0r   r   c                     e 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	 ej        d                              d          df ej        dd                              d          efdefdefgg d          d             Zej                            d	 ej        dd                              d          df ej        d                              d          ef ej        d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                              d           ej        d                              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                              d           ej        d                              d           ej        d           ej        dd'          g	          d(             Zej                            d !          d)             Zej                            d !          d*             Z d+S ),TestFillnaSeriesCoercionfillnac                    |                                 }|                    |          }t          j        ||           |j        |k    sJ dS )z!test coercion triggered by fillnaN)r;   r#  r0   r   r<   rx   s          r   _assert_fillna_conversionz2TestFillnaSeriesCoercion._assert_fillna_conversion  sK    mmE""
X&&&yN******r   zfill_val, fill_dtyper+   rF   r   Tc                    |} |dt           j        ddgt                    }|j        t          k    sJ  |d|ddgt                    }|                     ||||           d S )Nr*   r   r   rJ   )rS   nanr   r<   r%  r   r   r   
fill_dtyper   rO   rC   s          r   test_fillna_objectz+TestFillnaSeriesCoercion.test_fillna_object  sx    
  eS"&#s+6:::yF""""eS(C-V<<<&&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 )NrF   r   r   )rS   r'  r<   r   r%  r(  s          r   test_fillna_float64z,TestFillnaSeriesCoercion.test_fillna_float64"  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   rJ   )rS   r'  r   r<   r%  r(  s          r   test_fillna_complex128z/TestFillnaSeriesCoercion.test_fillna_complex128.  sw      eVRVVV4BMJJJyBM))))eVXvv677&&sHc:FFFFFr   r   r   datetime64[s]r   r   rE   )r   r   r   r   r   c                `   |} |t          j        d                              d          t           j        t          j        d                              d          t          j        d                              d          g          }|j        dk    sJ  |t          j        d                              d          |t          j        d                              d          t          j        d                              d          g          }|                     ||||           d S )Nr   r   r   r   r/  )r,   r   r   r  r<   r%  r(  s          r   test_fillna_datetimez-TestFillnaSeriesCoercion.test_fillna_datetime?  s     e\**22377\**22377\**22377	
 
 yO++++e\**22377\**22377\**22377	
 
 	&&sHc:FFFFFr   datetime64[s, US/Eastern]r   c           	        |}d} |t          j        d|                              d          t           j        t          j        d|                              d          t          j        d|                              d          g          }|j        dk    sJ t          |dd           |}n|                    |          } |t          j        d|                              d          |t          j        d|                              d          t          j        d|                              d          g          }|                     ||||           d S )	Nr   r   r   r   r   r   r2  r   )r,   r   r   r  r<   getattrr   r%  )	r   r   r   r)  r   r   rO   r   rC   s	            r   test_fillna_datetime64tzz1TestFillnaSeriesCoercion.test_fillna_datetime64tz_  sf   $  e\b11199#>>\b11199#>>\b11199#>>	
 
 y777778T4((0BB$$R((Be\b11199#>>\b11199#>>\b11199#>>	
 
 	&&sHc:FFFFFr   r   r7   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      @rightr7  r+   r   r7   r8   r9   rJ   )
r,   interval_rangeru   rS   r'  r   r<   IntervalDtyper   r%  )r   r   r   iirO   rC   r)  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   r[   r\   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  r9   r   r  r+   r   r7   r8   rJ   )	r,   period_rangeru   r  r   r<   PeriodDtyper   r%  )r   r   r   r  rO   rC   r)  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   r    r!   r   r%  rn   ro   rp   r   r*  rS   r   r   r,  r.  r,   r   r   r1  r5  Intervalr   r   r>  rr   r@  rB  rD  rF  rH  rM  rO  rQ  r%   r   r   r"  r"  
  sn        F+ + + [
VsFmff%5f~F G G	 G [
RZ3
+fbm-DtVnU G G	 G ["- R]#6N		
 G G G [R\,''//44oFR\,<888@@EEvNK&M		
 ?>>  	 	G G	 	G, [ \l;;;CCCHH+ R\,''//44f= \l;;;CCCHH+ K&M	
 "G G# "G8 [BK1V,,,BL,777??DDBL&&..s33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??DDBL&&..s33BLa   BIlC((
	
 G G G [455" " 65" [455" " 65" " "r   r"  c                  F   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          	                    d           ej        d          	                    d          ged<   dD ]UZ
de
 dZ ej        de
          	                    d           ej        de
          	                    d          gee<   V 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 d0d+          ej                            d,g d0d+          d1                         Zej                            d23          d4             Zd5S )6TestReplaceSeriesCoercionr   replacezdict[str, list]repr*   r   r   r9   r6   r   rF   r   r   r   r   r   TFr   r   r   r   r   )UTCr   zdatetime64[ns, ]r   r   r   r   dict)paramsc                    |j         S r   paramr   rY   s     r   howzTestReplaceSeriesCoercion.how  s
    }r   )	r   r   r   r   r   r   datetime64[ns, UTC]r   r   c                    |j         S r   r\  r^  s     r   from_keyz"TestReplaceSeriesCoercion.from_key  s     }r   )	r   r   r   r   r   r   r   r   r   )rZ  r   c                    |j         S r   r\  r^  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`
        rY  r   r:   )rY  ziprV  r,   r-   
ValueError)r   r_  rb  rd  replacers        r   rh  z"TestReplaceSeriesCoercion.replacer!  sl    
 &==C 2DHV4DEEFFHHH__y&!1(9KLLLHHr   c                   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          }|                    |          }t          j        ||d           d S )Nr8   r9   xxxnameyyyr   rl  r   )r   r`  r   r   r   )r   r   z32-bit platform buggy: z -> )r   rl  r<   Fcheck_dtype)r,   rK   r-   rV  r   r<   
startswithr   r   rn   skiprU  r0   r1   r   rd  rb  rh  r   rO   rC   r   s           r   test_replace_seriesz-TestReplaceSeriesCoercion.test_replace_series.  sq   !Qe,,,i*%eDDDjj""yH$$$$z** 	v/@/@/L/L 	FNNNF	!!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X&&
vs>>>>>>r   rd  )r   r   r   r   r   r   )indirectrb  r`  r   c                   t          j        ddgd          }t          j        | j        |         |d          j                            d          }|j        |k    sJ t          j        | j        |         |d          }|r|dk    r|j        d	k    sJ n|j        |k    sJ |                    |          }t          j	        ||d
           d S )Nr8   r9   xyzrk  rm  rn  r   r   stringFro  )
r,   rK   r-   rV  dtr   r<   rU  r0   r1   )	r   rd  rb  rh  using_infer_stringr   rO   rC   r   s	            r   test_replace_series_datetime_tzz9TestReplaceSeriesCoercion.test_replace_series_datetime_tzJ  s     !Qe,,,i*%eDDDGOOPTUUyH$$$$i(EBBB 	'&H"4"49(((((9&&&&X&&
vs>>>>>>r   )r   r`  r   c                R   t          j        ddgd          }t          j        | j        |         |d          j                            d          }|j        |k    sJ t          j        | j        |         |d          }t          |j        t           j                  r:t          |j        t           j                  r|	                    |j                  }n ||k    r|j                            d          }|
                    |          }t          j        ||d	           d S )
Nr8   r9   rw  rk  rm  rn  r   Fro  )r,   rK   r-   rV  ry  r   r<   r   DatetimeTZDtyper   rU  r0   r1   rs  s           r   %test_replace_series_datetime_datetimez?TestReplaceSeriesCoercion.test_replace_series_datetime_datetimeb  s    !Qe,,,i*%eDDDGOOPTUUyH$$$$i(EBBBci!344 	'Ir):
 :
 	' **SY''CCx&..&&CX&&
vs>>>>>>r   r[   r\   c                    t           r   r   r   s    r   test_replace_series_periodz4TestReplaceSeriesCoercion.test_replace_series_period}  r`   r   N)r   r    r!   r"   r   rV  rm   r,   r   r   r   keyr   rn   fixturer_  rb  rd  rh  rt  ro   rp   r{  r~  rr   r  r%   r   r   rT  rT    sd        jGFC#JCMq6CL3ZC	N(C-CK\""**3//\""**3//C
 $ 
 
%%%%BL"---55c::BL"---55c::
C
 +bl733\R\'5J5JKCV^FH-...  /. V^

 

 

     V^

 

 



 

 

  0 1 0 ^
 
 ^
? ? ?8 [OOO   
 [*,HITX   ? ?  ?  [OOO   
 [OOO   
? ?  ?" [455" " 65" " "r   rT  )
__future__r   r   r   numpyrS   rn   pandas.compatr   r   pandas.compat.numpyr   pandasr,   pandas._testing_testingr0   r
   r'   rt   r   r"  rT  r%   r   r   <module>r     s   " " " " " "       
             / . . . . .          ( ( ( ( ( ( ( (&\" \" \" \" \", \" \" \"~F" F" F" F" F"l F" F" F"Rs0 s0 s0 s0 s0 s0 s0 s0lL" L" L" L" L"| L" L" L"^f" f" f" f" f" f" f" f" f" f"r   