
    Mhu                    $   S SK Jr  S SKJrJr  S SKrS SKrS SKrS SKJ	r	  S SK
JrJr  S SKJr  S SKrS SKJr  \R(                  " SSS	9S
 5       r " S S5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      rg)    )annotations)datetime	timedeltaN)using_pyarrow_string_dtype)IS64is_platform_windows)np_version_gt2Tclass)autousescopec              #    ^ #    T R                   n[        R                  " UR                  UR                  UR
                  /5      nU 4S jnT R                  R                  nUR                  (       d  UR                  (       a  S v   g U H+  nU" U5      (       a  M  [        SUR                   SU 35      e   S v   g 7f)Nc                   >^^^ U u  mmmTR                   R                  R                  n[        UUU4S jU 5       5      $ )Nc              3     >#    U  H@  nTUR                   ;   =(       a%    TUR                   ;   =(       a    TUR                   ;   v   MB     g 7fNname).0xdtypeklassmethods     U/var/www/html/env/lib/python3.13/site-packages/pandas/tests/indexing/test_coercion.py	<genexpr><check_comprehensiveness.<locals>.has_test.<locals>.<genexpr>&   s:      
NWEQVVODDFaff4DDis   AA)nodesessionitemsany)combo	cls_funcsr   r   r   requests     @@@r   has_test)check_comprehensiveness.<locals>.has_test#   s>    $ufLL((..	 
NW
 
 	
    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_comprehensivenessr2      s      ++Cs{{CJJEF
 >>  Dww$,, 	 EE??$23<<.5'J   	s   BC "C c                  4    \ rS rSrSS/r/ SQr\S 5       rSrg)CoercionBase:   indexseries)	objectint64float64
complex128bool
datetime64datetime64tztimedelta64periodc                    [        U 5      er   NotImplementedErrorselfs    r   r   CoercionBase.methodH   s    !$''r$    N)	r/   
__module____qualname____firstlineno__r(   r)   propertyr   __static_attributes__rG   r$   r   r4   r4   :   s'    !G
F ( (r$   r4   c                  8   \ rS rSr% Sr/ rS\S'   S rS r\	R                  R                  SS\4S	\4S
\4/5      S 5       r\	R                  R                  SS	\R                   4S
\R"                  4S\4/5      S 5       r\	R                  R                  SS	\R"                  4S\R"                  4S\4/5      S 5       r\	R                  R)                  SS9S 5       r\	R                  R)                  SS9S 5       r\	R                  R)                  SS9S 5       r\	R                  R)                  SS9S 5       r\	R                  R)                  SS9S 5       r\	R                  R)                  SS9S 5       r\	R                  R)                  SS9S 5       rSrg)TestSetitemCoercionM   setitemz	list[str]r(   c                    [         R                  " SS/5      n[        UR                  5      US S & [         R                  " SS/5      n[        R
                  " X5        g )Na   )pdSerieslistvaluestmassert_series_equal)rE   serexpecteds      r   0test_setitem_series_no_coercion_from_values_listDTestSetitemCoercion.test_setitem_series_no_coercion_from_values_listT   sF    iia!cjj!A99c1X&
s-r$   c                   UR                  5       nSXR'   [        R                  " / SQUS9n[        R                  " XV5        UR
                  R                  U:X  d   eUR                  5       nSUR                  U'   [        R                  " / SQUS9n[        R                  " XV5        UR
                  R                  U:X  d   eg)z-test index's coercion triggered by assign key   )rS            r_   r6   N)copyrT   rU   rX   rY   r6   r   loc)rE   original_seriesloc_keyexpected_indexexpected_dtypetempexps          r    _assert_setitem_index_conversion4TestSetitemCoercion._assert_setitem_index_conversion]   s     ##% ii~>
t)zz>111##%ii~>
t)zz>111r$   zval,exp_dtyper   r_   皙?c                *   [         R                  " / SQ[         R                  " [        S5      [        S9S9nUR
                  R                  [        :X  d   eU[        L aY  UR                  5       nSnSn[        R                  " X&S9   [        R                  " [        US9   SUS'   S S S 5        S S S 5        g [         R                  " [        S5      U/-   [        S9nU R                  X1Xr5        g ! , (       d  f       NP= f! , (       d  f       g = f)	NrS   r`   ra   rb   abcdr   rc   z;Series.__setitem__ treating keys as positions is deprecatedz/index 5 is out of bounds for axis 0 with size 4matchr_   )rT   rU   IndexrV   r8   r6   r   
IndexErrorrd   pytestraisesrX   assert_produces_warningFutureWarningrl   )rE   val	exp_dtypeobjrj   warn_msgmsg	exp_indexs           r   test_setitem_index_object-TestSetitemCoercion.test_setitem_index_objectq   s     iiBHHT&\,PQyy&(((
"88:DTHCCy4//XNDG O 54 f!5VDI11#IQ	 ON 54s$   	D#C3)D3
D	=D
Dc                    [         R                  " / SQ5      nUR                  R                  [        R
                  :X  d   e[         R                  " SSSSU/5      nU R                  X1XB5        g )Nrp   r   rS   r`   ra   )rT   rU   r6   r   npr9   ru   rl   )rE   r{   r|   r}   r   s        r   test_setitem_index_int64,TestSetitemCoercion.test_setitem_index_int64   sU     ii%yy"((***HHaAq#./	--c	Mr$   gffffff@c                    [         R                  " / SQ/ SQS9nUR                  R                  [        R
                  :X  d   e[         R                  " SSSSU/5      nU R                  XAXR5        g )Nrp   )rn    @@ffffff@rc   rn   r   r   r   )rT   rU   r6   r   r   r:   ru   rl   )rE   r{   r|   r!   r}   r   s         r   test_setitem_index_float64.TestSetitemCoercion.test_setitem_index_float64   sX     ii,@Ayy"**,,,HHc3S#67	--c	Mr$   Test not implementedreasonc                    [         er   rB   rD   s    r   test_setitem_series_period.TestSetitemCoercion.test_setitem_series_period       !!r$   c                    [         er   rB   rD   s    r   test_setitem_index_complex1281TestSetitemCoercion.test_setitem_index_complex128   r   r$   c                    [         er   rB   rD   s    r   test_setitem_index_bool+TestSetitemCoercion.test_setitem_index_bool   r   r$   c                    [         er   rB   rD   s    r   test_setitem_index_datetime641TestSetitemCoercion.test_setitem_index_datetime64   r   r$   c                    [         er   rB   rD   s    r   test_setitem_index_datetime64tz3TestSetitemCoercion.test_setitem_index_datetime64tz   r   r$   c                    [         er   rB   rD   s    r   test_setitem_index_timedelta642TestSetitemCoercion.test_setitem_index_timedelta64   r   r$   c                    [         er   rB   rD   s    r   test_setitem_index_period-TestSetitemCoercion.test_setitem_index_period   r   r$   rG   N)r/   rH   rI   rJ   r   r(   __annotations__r\   rl   rw   markparametrizer8   rv   r   r   r9   r:   r   r   xfailr   r   r   r   r   r   r   rL   rG   r$   r   rN   rN   M   s   F GY.2( [[3-!Z3-HRR [[1bhh-#rzz):S&MJNN [[1bjj/C+<sFmLNN [[45" 6" [[45" 6" [[45" 6" [[45" 6" [[45" 6" [[45" 6" [[45" 6"r$   rN   c            
         \ rS rSrS/rSrS r\R                  R                  SSS\
4SS\
4SS\
4S	S	\
4/5      S
 5       r\R                  R                  SSSS\R                  4SS\
4S	S	\
4/5      S 5       r\R                  R                  SSSS\R                  4SS\
4S	S	\
4/5      S 5       r\R                  R                  S\R"                  " S5      S4\R"                  " SSS9S4/SS/S9\R                  R                  S\R"                  " S5      \R"                  " SSS9S/5      S 5       5       rS r\R                  R                  S\R(                  " SSS9SS4\R"                  " S5      \R"                  " S5      \
4SS\
4S	S	\
4/5      S  5       r\R                  R-                  S!S"9S# 5       r\R                  R-                  S!S"9S$ 5       rS%rg&)'TestInsertIndexCoercion   r6   insertc                    UR                  5       nUR                  SU5      n[        R                  " Xc5        UR                  U:X  d   eg)z!test coercion triggered by insertrS   N)rd   r   rX   assert_index_equalr   rE   originalvaluer[   ri   targetress          r   _assert_insert_conversion1TestInsertIndexCoercion._assert_insert_conversion   s=    mmAu%
c,yyN***r$   z"insert, coerced_val, coerced_dtyperS   rn   Fr   c                    [         R                  " [        S5      [        S9nUR                  [        :X  d   e[         R                  " SUSSS/[        S9nU R                  XAXS5        g )Nrq   rr   rR   bcd)rT   ru   rV   r8   r   r   )rE   r   coerced_valcoerced_dtyper}   rk   s         r   test_insert_index_object0TestInsertIndexCoercion.test_insert_index_object   sU     hhtF|62yyF"""hh[#sC8G&&sCGr$   )rS   rS   Nc                    Un[         R                  " / SQUS9nUb  UOUn[         R                  " SUSSS/US9nU R                  XbXt5        g )Nrp   rr   rS   r`   ra   rb   )rT   ru   r   )rE   any_int_numpy_dtyper   r   r   r   r}   rk   s           r   test_insert_int_index-TestInsertIndexCoercion.test_insert_int_index   sP     $hh|51)6)Bhh;1a0F&&sCGr$   )rS         ?Nc                    Un[         R                  " / SQUS9nUb  UOUn[        (       a  US:X  a  US:X  a  [        R                  n[         R                  " SUSSS/US9nU R                  XbXt5        g )	N)r          @      @      @rr   float32rn   r   r   r   r   )rT   ru   r	   r   r   r   )rE   float_numpy_dtyper   r   r   r   r}   rk   s           r   test_insert_float_index/TestInsertIndexCoercion.test_insert_float_index   so     "hh+59)6)B>ey0[C5G JJMhh[#sC8N&&sCGr$   fill_val,exp_dtype
2012-01-01datetime64[ns]
US/Easterntzdatetime64[ns, US/Eastern]r=   r>   idsinsert_value
Asia/Tokyoc                2   [         R                  " / SQUR                  S9R                  S5      nUR                  U:X  d   e[         R                  " SUR                  5       SSS/UR                  S9R                  S5      nU R                  XAXR5        UR                  (       Ga  [         R                  " S5      nUR                  S	U5      nUR                  [        5      R                  S	U5      nUR                  [        :X  d   e[        R                  " Xx5        [         R                  " SS
S9nUR                  S	U5      nUR                  S	UR                  UR                  R                  5      5      nUR                  UR                  :X  d   e[        R                  " Xx5        Ox[         R                  " SS
S9nUR                  S	U5      nUR                  [        5      R                  S	U5      nUR                  [        :X  d   e[        R                  " Xx5        S	n	UR                  S	U	5      nUR                  [        5      R                  S	U	5      nUS	   U	:X  d   eUR                  [        :X  d   e[        R                  " Xx5        g )N)
2011-01-01
2011-01-02
2011-01-03
2011-01-04r   nsr   r   r   r   r   rS   r   )rT   DatetimeIndexr   as_unitr   dater   	Timestampr   astyper8   rX   r   
tz_convert)
rE   fill_valr|   r   r}   rk   tsresultr[   items
             r   test_insert_index_datetimes3TestInsertIndexCoercion.test_insert_index_datetimes   s    D

'$- 	 yyI%%%8==?L,U{{
 '$- 	 	&&scE;;;l+BZZ2&Fzz&)00B7H>>V+++!!&3l|<BZZ2&Fzz!R]]399<<%@AH>>SYY...!!&3 l|<BZZ2&Fzz&)00B7H>>V+++!!&3At$::f%,,Q5{d"""~~'''
f/r$   c                   [         R                  " / SQ5      nUR                  S:X  d   e[         R                  " / SQ5      nU R                  U[         R                  " S5      US5        [         R
                  " S5      S4 Hf  nUR                  SU5      nUR                  [        5      R                  SU5      nUR                  [        :X  d   e[        R                  " XE5        Mh     g )N)1 day2 day3 day4 daytimedelta64[ns])r   10 dayr   r   r   r   r   rS   )rT   TimedeltaIndexr   r   	Timedeltar   r   r   r8   rX   r   )rE   r}   rk   r   r   r[   s         r   test_insert_index_timedelta645TestInsertIndexCoercion.test_insert_index_timedelta641  s     DEyy----  NO&&h'.?	
 \\,/3DZZ4(Fzz&)00D9H>>V+++!!&3	 4r$   z2012-01Mfreq	period[M]c           	     Z   [         R                  " / SQSS9nUR                  S:X  d   e[         R                  " SSS9U[         R                  " SSS9[         R                  " SSS9[         R                  " SSS9/n[	        U[         R                  5      (       aD  [         R                  " USS9nU R                  XAXc5        U R                  U[        U5      Xc5        g UR                  S	U5      nUR                  [        5      R                  S	U5      n[        R                  " Xx5        [	        U[         R                  5      (       d`  UR                  S	[        U5      5      nUR                  [        5      R                  S	[        U5      5      n[        R                  " Xx5        g g )
N)2011-012011-022011-032011-04r   r   r   r   r   r   r   r   )rT   PeriodIndexr   Period
isinstancer   strr   r   r8   rX   r   r   )	rE   r   r   r   r}   datark   r   r[   s	            r   test_insert_index_period0TestInsertIndexCoercion.test_insert_index_periodA  sK    nnIPSTyyK''' IIic*IIic*IIic*IIic*
 fbii((..C0C**3K **3FSP ZZ6*Fzz&)00F;H!!&3 fbll33As6{3::f-44QFD%%f7	 4r$   r   r   c                    [         er   rB   rD   s    r   test_insert_index_complex1284TestInsertIndexCoercion.test_insert_index_complex128i  r   r$   c                    [         er   rB   rD   s    r   test_insert_index_bool.TestInsertIndexCoercion.test_insert_index_boolm  r   r$   rG   N)r/   rH   rI   rJ   r(   r   r   rw   r   r   r8   r   r   r:   r   r   rT   r   r   r   r   r  r   r  r  rL   rG   r$   r   r   r      sk   iGF+ [[,6N#vE6"#v		
HH [[,#rzz"E6"#v		
HH [[, #rzz"E6"#v	

H
H [[\\,')9:\\,<8:VW	
 >*   [[	l	#R\\,<%PRST(0	(0T4  [[,YYys+YD\\,'l)CVL6N#v		
88> [[45" 6" [[45" 6"r$   r   c            	         \ rS rSrSr\R                  " / SQ5      rS rS r	S r
\R                  R                  SS\4S	\4S
\4S\4/5      S 5       r\R                  R                  SS\R                   4S	\R"                  4S
\R$                  4S\4/5      S 5       r\R                  R                  SS\R"                  4S	\R"                  4S
\R$                  4S\4/5      S 5       r\R                  R                  SS\R$                  4S	\R$                  4S
\R$                  4S\4/5      S 5       r\R                  R                  SS\4S	\4S
\4S\R,                  4/5      S 5       r\R                  R                  S\R2                  " S5      S4\R2                  " SSS9\4/SS/S9S 5       r\R                  R7                  SS9S 5       r\R                  R7                  SS9S 5       r\R                  R7                  SS9S 5       r\R                  R7                  SS9S 5       r\R                  R                  S \R@                  " S!S"9\!" S!S"9\RD                  " S!S#5      /5      S$ 5       r#S% r$S&r%g')(TestWhereCoercionir  whereTFTFc                    UR                  5       nUR                  X#5      n[        R                  " Xt5        UR                  U:X  d   eg)z test coercion triggered by whereN)rd   r  rX   assert_equalr   )rE   r   condrW   r[   ri   r   r   s           r   _assert_where_conversion*TestWhereCoercion._assert_where_conversionv  s;     ll4(
&yyN***r$   c                   ^ TSL a  U" / SQ5      nOM[        T[        [        R                  45      (       a  [        R
                  " TSS9nOU" U4S jS 5       5      nU" US   US   US	   US
   /US9nXV4$ )NT)TFTTrb   periodsc              3  ,   >#    U  H	  oT-  v   M     g 7fr   rG   )r   r   r   s     r   r   3TestWhereCoercion._construct_exp.<locals>.<genexpr>  s     >Ax<s   )r_            r   rS   r`   ra   rr   )r   r   r   r=   rT   
date_range)rE   r}   r   r   r|   rW   rk   s      `   r   _construct_exp TestWhereCoercion._construct_exp  sy    t45F8R]]";<<]]8Q7F>>>FSVVAYAq	:)L{r$   c                    U" U R                   5      nU" US   X!S   U/US9nU R                  XX&U5        U R                  XX$5      u  pvU R                  XXvU5        g )Nr   r`   rr   )_condr  r  )rE   r}   r   r   r|   r  rk   rW   s           r   	_run_testTestWhereCoercion._run_test  sc    TZZ SVX1vx8	J%%c	J))#hJ%%ciHr$   r   rS   rn         ?      ?Tc                    UnU" [        S5      [        S9nUR                  [        :X  d   eU R                  XRXC5        g )Nrq   rr   )rV   r8   r   r   rE   index_or_seriesr   r|   r   r}   s         r   test_where_object#TestWhereCoercion.test_where_object  s9    
  DL/yyF"""se7r$   c                    UnU" / SQ5      nUR                   [        R                  :X  d   eU R                  XbXS5        g )Nrp   )r   r   r9   r   rE   r%  r   r|   r!   r   r}   s          r   test_where_int64"TestWhereCoercion.test_where_int64  s7    
  L!yyBHH$$$se7r$   zfill_val, exp_dtypec                    UnU" / SQ5      nUR                   [        R                  :X  d   eU R                  XbXS5        g )N)rn   皙@ffffff
@皙@)r   r   r:   r   r)  s          r   test_where_float64$TestWhereCoercion.test_where_float64  s8    
  ()yyBJJ&&&se7r$   c                    UnU" / SQ[         R                  S9nUR                  [         R                  :X  d   eU R                  XRXC5        g )N)r"         @       @      @      @      @      @rr   )r   r;   r   r   r$  s         r   test_where_complex128'TestWhereCoercion.test_where_complex128  s>      4BMMJyyBMM)))se7r$   c                    UnU" / SQ5      nUR                   [        R                  :X  d   eU R                  XRXC5        g )Nr  )r   r   bool_r   r$  s         r   test_where_series_bool(TestWhereCoercion.test_where_series_bool  s8    
  ./yyBHH$$$se7r$   r   r   r   r   r=   r>   r   c                Z   UnU" [         R                  " SSSS9R                  S 5      5      nUR                  S:X  d   eUnUS:X  a:  XfR	                  5       UR                  5       4 H  nU R                  XWXC5        M     g XfR	                  5       4 H  nU R                  XRXC5        M     g )Nr   rb   Dr  r   r   )rT   r  
_with_freqr   to_pydatetimeto_datetime64r   )rE   r%  r   r|   r   r}   fvscalars           r   test_where_datetime64'TestWhereCoercion.test_where_datetime64  s      BMM,DOOPTUVyy,,,,((//123C3C3EFsE= G //12se? 3r$   r   r   c                    [         er   rB   rD   s    r   test_where_index_complex128-TestWhereCoercion.test_where_index_complex128  r   r$   c                    [         er   rB   rD   s    r   test_where_index_bool'TestWhereCoercion.test_where_index_bool  r   r$   c                    [         er   rB   rD   s    r   test_where_series_timedelta64/TestWhereCoercion.test_where_series_timedelta64  r   r$   c                    [         er   rB   rD   s    r   test_where_series_period*TestWhereCoercion.test_where_series_period  r   r$   r   	   daysr=  c                   [         R                  " SSS9n[        R                  " / SQ5      n[         R                  " SXS/5      nUR                  X15      n[        R                  " XT5        [        R                  " SS5      n[         R                  " US   XfUS	   /[        S
9nUS   UL d   eUR                  X65      n[        R                  " XT5        g )Nz1 Dayrb   r  )TFFTz4 DaysNaTr   r   ra   rr   rS   )rT   timedelta_ranger   arrayr   r  rX   r   r=   ru   r8   )rE   r   tdir  r[   r   dtnats          r   test_where_index_timedelta64.TestWhereCoercion.test_where_index_timedelta64  s       !4xx23$$guX%FG4'
f/ eT*88SVU3q6:&I{e###4'
f/r$   c                |   [         R                  " SSSS9nUR                  S5      n[        R                  " / SQ5      nUS   UR
                  S-  -   n[         R                  " XBS	   U/5      nUR                  X45      n[        R                  " Xe5        [        R                  " X"R
                  S-  -   [        S
9nUR                  X75      n[         R                  " US   US	   US   /5      n[        R                  " Xe5        [         R                  " SS9n[         R                  " XS	   U/[        S
9nUR                  X85      n[        R                  " Xe5        [         R                  " SS5      n	[         R                  " XS	   U	/[        S
9nUR                  X95      n[        R                  " Xe5        g )N
2016-01-01ra   QSr>  Q)FTF
   rS   rr   r   r`   rb   rS  z
2020-04-21r=  )rT   r  	to_periodr   rX  r   r   r  rX   r   asarrayr8   r   ru   r   )
rE   dtipir  r   r[   r   othertdpers
             r   test_where_index_period)TestWhereCoercion.test_where_index_period  s_   mmL!$?]]3xx,- 22%>>5Q%"78$&
f/ 

2",F;$&>>58RUE!H"=>
f/ \\q!88RAO6:$#
f/iic*88SQ%-V<$$
f/r$   rG   N)&r/   rH   rI   rJ   r   r   rX  r  r  r  r   rw   r   r   r8   r&  r9   r:   r;   r*  r0  r6  r9  r:  rT   r   rD  r   rG  rJ  rM  rP  r   r   r?   r[  rj  rL   rG   r$   r   r  r  r  s   FHH/0E+	I [[
VsFmff%5f~F8	8 [[
RXXbjj)FBMM+BT6NS8	8 [[
RZZ3

+fbmm-DtVnU8	8 [["-- R]]#6N		
88 [[
VsFmff%5bhh7GH8	8 [[\\,')9:\\,<8&A	
 >*  @@ [[45" 6" [[45" 6" [[45" 6" [[45" 6" [[",,A&	q(92>>!S;QR00 0r$   r  c                     \ rS rSrSr\R                  R                  SS9S 5       rS r	\R                  R                  SS\4S	\4S
\4S\4/5      S 5       r\R                  R                  SS\R                  4S	\R                  4S
\R                  4S\4/5      S 5       r\R                  R                  SS\R                  4S	\R                  4S
\R                  4S\4/5      S 5       r\R                  R                  S\R&                  " S5      S4\R&                  " SSS9\4S\4S\4// SQS9S 5       r\R                  R                  S\R&                  " SSS9S4\R&                  " S5      \4\R&                  " SSS9S4S\4S\4/5      S 5       r\R                  R                  SSS	S
S\R,                  " SSSS9\R&                  " SSS9\R&                  " S5      \R.                  " SS9\R0                  " S S!5      /	5      S" 5       r\R                  R                  SS9S# 5       r\R                  R                  SS9S$ 5       r\R                  R                  SS9S% 5       r\R                  R                  SS9S& 5       r\R                  R                  SS9S' 5       r\R                  R                  SSS	S
S\R,                  " SSSS9\R&                  " SSS9\R&                  " S5      \R.                  " SS9\R0                  " S S(5      /	5      S) 5       r\R                  R                  SS9S* 5       r \R                  R                  SS9S+ 5       r!S,r"g-).TestFillnaSeriesCoercioni%  fillnar   r   c                    [         er   rB   rD   s    r   test_has_comprehensive_tests5TestFillnaSeriesCoercion.test_has_comprehensive_tests*  r   r$   c                    UR                  5       nUR                  U5      n[        R                  " Xc5        UR                  U:X  d   eg)z!test coercion triggered by fillnaN)rd   rn  rX   r  r   r   s          r   _assert_fillna_conversion2TestFillnaSeriesCoercion._assert_fillna_conversion.  s9    mmE"
&yyN***r$   zfill_val, fill_dtyperS   rn   r"  Tc                    UnU" S[         R                  SS/[        S9nUR                  [        :X  d   eU" SUSS/[        S9nU R	                  XRXc5        g )NrR   r   r   rr   )r   nanr8   r   rs  rE   r%  r   
fill_dtyper   r}   rk   s          r   test_fillna_object+TestFillnaSeriesCoercion.test_fillna_object5  sY    
  S"&&#s+6:yyF"""S(C-V<&&scFr$   zfill_val,fill_dtypec                    UnU" S[         R                  SS/5      nUR                  [         R                  :X  d   eU" SUSS/5      nU R	                  XRXc5        g )Nrn   r.  r/  )r   rv  r   r:   rs  rw  s          r   test_fillna_float64,TestFillnaSeriesCoercion.test_fillna_float64A  sY    
  S"&&#s+,yyBJJ&&&S(C-.&&scFr$   c                    UnU" S[         R                  SS/[         R                  S9nUR                  [         R                  :X  d   eU" SUSS/5      nU R	                  XRXc5        g )Nr"  r4  r5  rr   )r   rv  r;   r   rs  rw  s          r   test_fillna_complex128/TestFillnaSeriesCoercion.test_fillna_complex128M  s_      VRVVVV4BMMJyyBMM)))VXvv67&&scFr$   r   r   r   r   r   )r=   r>   r8   r8   r   c                   UnU" [         R                  " S5      [         R                  [         R                  " S5      [         R                  " S5      /5      nUR                  S:X  d   eU" [         R                  " S5      U[         R                  " S5      [         R                  " S5      /5      nU R	                  XRXc5        g )Nr   r   r   r   )rT   r   rV  r   rs  rw  s          r   test_fillna_datetime-TestFillnaSeriesCoercion.test_fillna_datetime^  s      \*\*\*	
 yy,,,,\*\*\*	
 	&&scFr$   r   r   c           
        UnSnU" [         R                  " SUS9[         R                  [         R                  " SUS9[         R                  " SUS9/5      nUR                  S:X  d   e[	        USS 5      c  UnOUR                  U5      nU" [         R                  " SUS9U[         R                  " SUS9[         R                  " SUS9/5      nU R                  XbX5        g )Nr   r   r   r   r   r   r   )rT   r   rV  r   getattrr   rs  )	rE   r%  r   rx  r   r   r}   rB  rk   s	            r   test_fillna_datetime64tz1TestFillnaSeriesCoercion.test_fillna_datetime64tz~  s      \b1\b1\b1	
 yy88888T4(0B$$R(B\b1\b1\b1	
 	&&scFr$   r   r`   leftclosedrS  r^  r=  c                8   [         R                  " SSSS9R                  S[        R                  5      n[        UR                  [         R                  5      (       d   eU" U5      nU" US   X#S   US   US	   /[        S
9n[        nU R                  XBXV5        g )Nr   g      @rightr  rS   r   r`   ra   rb   rr   )
rT   interval_ranger   r   rv  r   r   IntervalDtyper8   rs  )rE   r%  r   iir}   rk   rx  s          r   test_fillna_interval-TestFillnaSeriesCoercion.test_fillna_interval  s     sC8??266J"((B$4$45555b!r!uh1r!ubeDFS
&&scFr$   c                    [         er   rB   rD   s    r   test_fillna_series_int641TestFillnaSeriesCoercion.test_fillna_series_int64  r   r$   c                    [         er   rB   rD   s    r   test_fillna_index_int640TestFillnaSeriesCoercion.test_fillna_index_int64  r   r$   c                    [         er   rB   rD   s    r   test_fillna_series_bool0TestFillnaSeriesCoercion.test_fillna_series_bool  r   r$   c                    [         er   rB   rD   s    r   test_fillna_index_bool/TestFillnaSeriesCoercion.test_fillna_index_bool  r   r$   c                    [         er   rB   rD   s    r   test_fillna_series_timedelta647TestFillnaSeriesCoercion.test_fillna_series_timedelta64  r   r$   Wc                8   [         R                  " SSSS9R                  S[         R                  5      n[	        UR
                  [         R                  5      (       d   eU" U5      nU" US   X#S   US   US   /[        S	9n[        nU R                  XBXV5        g )
Nr^  rb   r=  r>  rS   r   r`   ra   rr   )	rT   period_ranger   rV  r   r   PeriodDtyper8   rs  )rE   r%  r   rf  r}   rk   rx  s          r   test_fillna_series_period2TestFillnaSeriesCoercion.test_fillna_series_period  s     __\13?FFq"&&Q"((BNN3333b!r!uh1r!ubeDFS
&&scFr$   c                    [         er   rB   rD   s    r   test_fillna_index_timedelta646TestFillnaSeriesCoercion.test_fillna_index_timedelta64  r   r$   c                    [         er   rB   rD   s    r   test_fillna_index_period1TestFillnaSeriesCoercion.test_fillna_index_period  r   r$   rG   N)#r/   rH   rI   rJ   r   rw   r   r   rp  rs  r   r8   ry  r   r:   r;   r|  r  rT   r   r  r  Intervalr   r   r  r  r  r  r  r  r  r  r  rL   rG   r$   r   rm  rm  %  s    F[[45" 6"+ [[
VsFmff%5f~FG	G [[
RZZ3

+fbmm-DtVnUG	G [["-- R]]#6N		
GG [[\\,')9:\\,<8&AK&M		
 ?  	G	G, [[\\,<8:VW\\,'0\\,<8:VWK&M	

G
G8 [[KK1V,LL,7LL&LLa IIlC(
	
GG [[45" 6" [[45" 6" [[45" 6" [[45" 6" [[45" 6" [[KK1V,LL,7LL&LLa IIlC(
	
GG [[45" 6" [[45" 6"r$   rm  c                     \ rS rSr% S/rSr0 rS\S'   SS/\S'   S	S
/\S'   SS/\S'   SS/\S'   SS/\S'   \R                  " S5      \R                  " S5      /\S'   S H.  r
S\
 S3r\R                  " S\
S9\R                  " S\
S9/\\'   M0     \R                  " S5      \R                  " S5      /\S'   \R                  " SS/S 9S! 5       r\R                  " / S"QS 9S# 5       r\R                  " / S"Q/ S$QS%9S& 5       r\R                  S' 5       r\R&                  R)                  \" 5       S(S)9S* 5       r\R&                  R/                  S+/ S,QSS-9\R&                  R/                  S.S/S0/SS-9S1 5       5       r\R&                  R/                  S+/ S2QSS-9\R&                  R/                  S./ S2QSS-9S3 5       5       r\R&                  R5                  S4S)9S5 5       rS6rg7)8TestReplaceSeriesCoercioni  r7   replacezdict[str, list]reprR   r   r8   rb   r_   r9   rn   r-  r:   r"  r3  r;   TFr<   r   r   r   )UTCr   zdatetime64[ns, ]r   r   r   r   dict)paramsc                    UR                   $ r   paramrE   r!   s     r   howTestReplaceSeriesCoercion.how  s    }}r$   )	r8   r9   r:   r;   r<   r   datetime64[ns, UTC]r   r   c                    UR                   $ r   r  r  s     r   from_key"TestReplaceSeriesCoercion.from_key  s     }}r$   )	r8   r9   r:   r;   r<   r=   r>   r>   r?   )r  r   c                    UR                   $ r   r  r  s     r   to_key TestReplaceSeriesCoercion.to_key  s    2 }}r$   c                    US:X  a1  [        [        U R                  U   U R                  U   5      5      nU$ US:X  a1  [        R                  " U R                  U   U R                  U   S9nU$ [
        e)z)
Object we will pass to `Series.replace`
r  r7   rc   )r  zipr  rT   rU   
ValueError)rE   r  r  r  replacers        r   r  "TestReplaceSeriesCoercion.replacer7  so    
 &=C 2DHHV4DEFH
 	 H_yy&!1(9KLH  r$   zTODO: test is to complexr   c                   [         R                  " SS/SS9n[         R                  " U R                  U   USS9nUR                  U:X  d   eUR                  S5      (       a  UR                  S5      (       a  g US;   a  g US	:X  a  US
;   d  US:X  aa  US;   a[  [        (       a  [        5       (       a  [        R                  " SU SU 35        [         R                  " U R                  U   USUS9nO5[         R                  " U R                  U   USS9nUR                  U:X  d   eSn[        n	UR                  UR                  :X  dH  UR                  [        :X  d4  UR                  R                  S;   a  UR                  R                  S;   a  S n	[        R                  " XS9   UR                  U5      n
S S S 5        [        R                   " W
U5        g ! , (       d  f       N&= f)Nra   rb   xxxr   yyyr6   r   r   )r   r  r:   r9   r;   )r9   r:   z32-bit platform buggy: z -> )r6   r   r   !Downcasting behavior in `replace`iufcrs   )rT   ru   rU   r  r   
startswithr   r   rw   skiprz   r8   kindrX   ry   r  rY   )rE   r  r  r  r  r6   r}   rk   r   warnr   s              r   test_replace_series-TestReplaceSeriesCoercion.test_replace_seriesE  s   !Qe,ii*%eDyyH$$$z**v/@/@/L/LNN	!f&9$3G)G4.005hZtF8LM ))DHHV,EXVC ))DHHV,EFC99&&&1II"yyF"		&(SYY^^v-ED''8[[*F 9 	vs+ 98s   )G
G)r  )r   r<   r8   r;   r:   r9   )indirectr  r  r   c                .   [         R                  " SS/SS9n[         R                  " U R                  U   USS9nUR                  U:X  d   e[         R                  " U R                  U   USS9nU(       a  US:X  a  UR                  S:X  d   eOUR                  U:X  d   eS	n	UR                  [
        :w  a  [        OS n
[        R                  " XS
9   UR                  U5      nS S S 5        [        R                  " WU5        g ! , (       d  f       N&= f)Nra   rb   xyzr   r  r  r8   stringr  rs   )rT   ru   rU   r  r   r8   rz   rX   ry   r  rY   )rE   r  r  r  r  using_infer_stringr6   r}   rk   r   r  r   s               r   test_replace_series_datetime_tz9TestReplaceSeriesCoercion.test_replace_series_datetime_tzl  s     !Qe,ii*%eDyyH$$$ii(EB&H"499(((99&&&1 #		V 3}''8[[*F 9 	vs+ 98s   D
D)r   r  r   c                   [         R                  " SS/SS9n[         R                  " U R                  U   USS9nUR                  U:X  d   e[         R                  " U R                  U   USS9n[
        n[        UR                  [         R                  5      (       aG  [        UR                  [         R                  5      (       a  UR                  UR                  5      nS nOUR                  U:X  d   eX#:X  a  S nSn	[        R                  " XS9   UR                  U5      n
S S S 5        [        R                  " W
U5        g ! , (       d  f       N&= f)	Nra   rb   r  r   r  r  r  rs   )rT   ru   rU   r  r   rz   r   DatetimeTZDtyper   rX   ry   r  rY   )rE   r  r  r  r  r6   r}   rk   r  r   r   s              r   %test_replace_series_datetime_datetime?TestReplaceSeriesCoercion.test_replace_series_datetime_datetime  s    !Qe,ii*%eDyyH$$$ii(EBcii!3!344IIr)):
 :
 **SYY'CD99&&&!1''8[[*F 9 	vs+ 98s   E
Er   c                    [         er   rB   rD   s    r   test_replace_series_period4TestReplaceSeriesCoercion.test_replace_series_period  r   r$   rG   N)r/   rH   rI   rJ   r(   r   r  r   rT   r   r   keyr   rw   fixturer  r  r  r  r   skipifr   r  r   r  r  r   r  rL   rG   r$   r   r  r    sm   jGFC#JCMq6CL3ZC	N(C-CK\\,7l9STC#t1%LL"-LL"-
C $ !ll73R\\'5JKC^^FH-. / ^^

 ^^



010 ^^
 
 [[24=WX$, Y$,L [[O  
 [[*,HITX  ,,( [[O  
 [[O  
,,0 [[45" 6"r$   r  )
__future__r   r   r   r&   numpyr   rw   pandas._configr   pandas.compatr   r   pandas.compat.numpyr	   pandasrT   pandas._testing_testingrX   r  r2   r4   rN   r   r  rm  r  rG   r$   r   <module>r     s    "    5 /   G, -:( (&d", d"N{"l {"|p0 p0fJ"| J"Zz" z"r$   