
    Mh7                     x    S SK rS SKJr  S SKrS SKrS SKrS SKr	S SKJ
r
JrJrJrJrJr  S SKJr   " S S5      rg)    N)combinations)	DataFrameIndexSeries	Timestampconcatisnac                   4   \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS r\R                  " S5      \" / SQ5      \" / SQ5      \" \" S5      5      \R$                  " SR'                  5       5      \R$                  " SR'                  5       SS9\R(                  R+                  / SQ5      \R,                  " \R0                  " SSSSS5      \R0                  " SSSSS5      \R0                  " SSSSS5      /5      \R2                  R5                  SR'                  5       SR'                  5       /5      /	r\R:                  R=                  S\S S9S 5       r\R:                  R=                  S \ " \S!S"9S# S9S$ 5       r!S% r"S& r#S' r$S( r%\R:                  R=                  S)/ S*Q5      \R:                  R=                  S+SS,/5      S- 5       5       r&\R:                  R=                  S)/ S*Q5      \R:                  R=                  S+SS,/5      S. 5       5       r'S/r(g0)1
TestAppend   c                    UR                  5       nSUS'   UR                  S S nUR                  SS  nUR                  U5      nUR                  U5      nUR                  U5      n[        R
                  " US   US   5        US	 UR                  XqS9n	SU	;   d   eUR                  XaS9n	SU	;   d   eUS S R                  USS  5      n[        R                  " X5        US S R                  USS  US9n
US S R                  USS  US9n[        R                  " U
R                  / SQS9UR                  / SQS95        g )Nbarfoo   Asort)r   BCDcolumns)copyindexreindex_appendtmassert_almost_equalassert_frame_equal)selfr   float_framemixed_framebegin_index	end_indexbegin_frame	end_frameappendedpartial_appendedmixed_appendedmixed_appended2s               Y/var/www/html/env/lib/python3.13/site-packages/pandas/tests/reshape/concat/test_append.pytest_appendTestAppend.test_append   sx   !&&("E!''+%%ab)	!))+6''	2	&&y1
x}k#.>?cN&..y.D&&&&$,,[,D&&&& r?**;qr?;
h4 %Ra00QRt0L%bq/11+ab/1M 	""+?"@##,@#A	
    c                     [        5       nUR                  U5      n[        R                  " X5        X1Ld   eUR                  U5      n[        R                  " X5        X1Ld   eg Nr   r   r   r   )r    r!   emptyr'   s       r+   test_append_emptyTestAppend.test_append_empty7   s[    &&u-
k4***==-
k4***r.   c                     Sn[         R                  " [        US9   UR                  USS9  S S S 5        g ! , (       d  f       g = f)NzIndexes have overlapping valuesmatchT)verify_integrity)pytestraises
ValueErrorr   )r    r!   msgs      r+   test_append_overlap_raises%TestAppend.test_append_overlap_raisesB   s4    /]]:S1dC 211s	   6
Ac                     [        SSS.SSS.S.5      n[        / SQ/ SQS	S
9n[        SSSS.SSSS.S	S0S.5      nUR                  U5      n[        R                  " XC5        g )N      )xy      ab)r         rG   rH   czr   namer   )rB   rC   rM   rI   rJ   )r   r   r   r   r   )r    dfrowexpectedresults        r+   test_append_new_columns"TestAppend.test_append_new_columnsG   sp    11-!!4DEFYoC@11-11-1X
 C
f/r.   c                     [        / SQS9n[        SS/SS/S9nUR                  X1S9n[        SS// SQS9n[        R                  " XE5        g )	Nr   r   r   r   r   r@   r   r   r   r   r   r1   )r    r   rP   df3df5rR   s         r+   test_append_length0_frame$TestAppend.test_append_length0_frameU   sN    /q!fsCj9jjj(Aq6?C
c,r.   c                 ,   [         R                  " SSS9nSS/US S & [         R                  " SSS9n/ SQUS S & [        U5      n[        U5      nUR                  USS	9n[        [         R                  " X45      5      n[
        R                  " XV5        g )
N)rA   z	i4,f4,S10dtype)r@          @Hello)rA         @World)rD   ))rD   g      @r   )r   g      @r   )g      @g       @bazTignore_index)npzerosr   r   concatenater   r   )r    arr1arr2df1df2rS   rR   s          r+   test_append_recordsTestAppend.test_append_records]   s    xx[2$&78Qxx[2GQooSt4R^^TL9:
f/r.   c                     [        SS/SS/S.SS/S9n[        SS/SS/S	.SS/S
9nUR                  X1S9n[        / SQ/ SQ/ SQS./ SQS9nUSL a  U/ SQ   n[        R                  " XE5        g )Nr@   rA   rF   rH   rG   r   rD   rE   )rG   rL   )r   r   )r@   rA   NN)r@   rA   r@   rA   )NNrD   rE   )rH   rG   rL   rK   Fr1   )r    r   rl   rm   rS   rR   s         r+   test_append_sortsTestAppend.test_append_sortsl   s    q!fAq62S#JGq!fAq621a&AS, $<>PQ#
 5=0H
f/r.   c                 V   [        [        R                  R                  S5      R	                  S5      S:  [        R                  R                  S5      R                  SSS5      [        R                  R                  S5      R	                  S5      SS/S-  S.5      nUS S R                  S S 2/ SQ4   nUSS  R                  S S 2/ S	Q4   nUR                  XAS
9n[        US   SS 5      R                  5       (       d   e[        US   SS  5      R                  5       (       d   eg )NrA   
   r   r   r   r   )boolsintsfloatsstrings)ru   rv   rw   )rx   rv   rw   r   rx   rE   ru   )
r   rg   randomdefault_rngstandard_normalintegerslocr   r	   all)r    r   rP   rG   rH   r'   s         r+   test_append_different_columns(TestAppend.test_append_different_columns{   s   ..q1AA"EI		--a099!RD))//2BB2F!5>A-	
 rFJJq556qrFJJq77899Q9*HY'!,-113333HW%ab)*..0000r.   c                    US S USS USS USS  /nUS   R                  USS  5      n[        R                  " XB5        US   R                  5       US'   SUS   S'   US   R                  USS  US	9n[        R                  " UR                  S S 2UR
                  4   U5        US   SS  S:H  R                  5       (       d   eUS   S S R                  5       R                  5       (       d   eg )
Nr   rt      r   r@   r   r   r   )r   r   r   r   r}   r   r~   r	   )r    r   r!   chunksrS   s        r+   test_append_manyTestAppend.test_append_many   s   O"2	
 ""6!":.
f2BZ__&r
!r
5""6!":D"9
fjjK,?,?)?@+Nubc"e+002222e}Sb!&&(,,....r.   c                 P   [        / SQS9nUR                  S/5      n[        / SQ/ SQ/ SQ// SQS9nUR                  S/5      nSn[        R                  " [        US	9   UR                  U5      nS S S 5        WR                  R                  S:X  d   eg ! , (       d  f       N+= f)
NrW   r   r   )r@   rE   rJ   )rA   r      )rD   rI   	   )datar   zDThe behavior of array concatenation with empty entries is deprecatedr6   )r   	set_indexr   assert_produces_warningFutureWarningr   r   rO   )r    rl   rm   r<   rS   s        r+   test_append_preserve_index_name*TestAppend.test_append_preserve_index_name   s    0mmSE"iI>XmmSE"T''SA[[%F B||  C''' BAs    B
B%rD   rE   r   rI   )g      @g      @g      @abczA B CzD E FT)ordered)rJ   r   r   rt     r@   r   rI   rt   rJ      r   c                 ,    [        U 5      R                  $ r0   type__name__rB   s    r+   <lambda>TestAppend.<lambda>   s    473C3Cr.   )idsc                    [        / SQ/ SQ/US9nUS S n[        SS/USS9nUR                  U5      n[        / SQ/ SQSS[        R                  /// S	QUS
9nUR
                  R                  S   R                  S:X  d   eUR
                  R                  S   R                  S:X  d   e[        R                  " XV5        UnUS S n[        SS/SS//US9n[        / SQUSS9nUR                  U5      n[        SS[        R                  /SS[        R                  // SQ// S	QUS
9n[        R                  " XV5        g )Nr@   rA   rD   r   r   rA   rJ   r   rN   )r@   rA   rb   r   r@   rA   rX   r   ir@   rE   r   rJ   r   r   )
r   r   r   rg   nandtypesilockindr   r   )r    r   rP   	ser_indexserrS   rR   s          r+   test_append_same_columns_type(TestAppend.test_append_same_columns_type   s;    	9-u="1I	aV915C)aBFF^4Iu
 ##A&++s222##A&++s222
f/ 	bq	AA'7Yia8CBFF^aBFF^Y7

 	f/r.   zdf_columns, series_indexrA   )rc                 ,    [        U 5      R                  $ r0   r   r   s    r+   r   r      s    d1g&&r.   c           
      R   [        / SQ/ SQ/US9n[        / SQUSS9nUR                  U5      nUR                  R	                  U5      n[        UR                  5       5      R                  U5      n[        SSS	[        R                  [        R                  [        R                  /S
SS[        R                  [        R                  [        R                  /[        R                  [        R                  [        R                  SSS/// SQUS9n[        R                  " XX5        g )Nr   r   r   r   rA   rN         ?r`   rb   rE   r   rI   rJ   r   r   r   rX   )r   r   r   r   
differencer   tolistappendrg   r   r   r   )	r    
df_columnsseries_indexrP   r   rS   idx_diffcombined_columnsrR   s	            r+   #test_append_different_columns_types.TestAppend.test_append_different_columns_types   s     	9-zBYl;C99''
3 !2!2!45<<XFc37Aq"&&"&&"&&1Aq1
 $
 	f/r.   c                    [        SS/[        R                  " SSSSS5      [        R                  " SSSSS5      /S/S9n[        SS/[        R                  " SSS	SS5      [        R                  " SSS	S
S5      /[        R                  " SSSSS5      [        R                  " SSSSS5      //SS/S9n[        [	        [
        R                  [
        R                  [        R                  " SSS	S
S5      [        R                  " SSSSS5      /SS9[	        [        R                  " SSSSS5      [        R                  " SSSSS5      [        R                  " SSS	SS5      [        R                  " SSSSS5      /SS9/SUS9nUR                  USUS9nU(       a  USS/   nOUSS/   n[        R                  " XT5        g )Nr@   rA   r   r   
start_time)r   r   r   rE   r   rD   rI   rt   rJ   end_time)rO   )axisr   Trf   r   )
r   dtdatetimer   r   pdNaTr   r   r   )r    r   rl   rm   rR   rS   s         r+   test_append_dtype_coerce#TestAppend.test_append_dtype_coerce   s    a&++dAq!Q/T1aA1NO!N

 a&T1aA.D!Q20NOT1aA.D!Q20NO ":.
 D!Q26D!Q26	 $ D!Q15D!Q15D!Q15D!Q15	 &( -
0 St$?\ :;Hz :;H
f/r.   c                 
   [        S[        R                  " / SQSS905      n[        S[        R                  " / SQ[        S905      nUR	                  USUS9nUS   R
                  S	:X  d   eUS   R
                  S
:X  d   eg )Nr   )r@   rA   rD   rE   i8r^   r   )TFTFTr   f8O)r   rg   arrayboolr   r_   )r    r   rl   rm   r'   s        r+   (test_append_missing_column_proper_upcast3TestAppend.test_append_missing_column_proper_upcast*  s{    bhh|4@ABbhh'ANOP;;sD;A}""d***}""c)))r.   c                     [        S[        R                  R                  5       S9n[	        SSUS.5      n[        SS/S9nUR                  US	S
9n[        [        R                  [        R                  SSU/// SQS9nUS   R                  [        5      US'   US   R                  [        5      US'   [        R                  " XE5        [        [        R                  [        R                  SSU//S-  / SQS9nUS   R                  [        5      US'   US   R                  [        5      US'   UR                  US	S
9n[        R                  " Xe5        UR                  X"/S	S
9n[        R                  " Xu5        g )Nz2018-10-24 07:30:00)tzr   r`   )rG   rH   daterL   dr   Tre   )rL   r   rG   rH   r   rA   )r   dateutilr   tzutcr   r   r   rg   r   astypeobjectr   r   )r    r   r   rP   result_arR   result_brS   s           r+   2test_append_empty_frame_to_series_with_dateutil_tz=TestAppend.test_append_empty_frame_to_series_with_dateutil_tz2  sU   .8;;3D3D3FG3S$78Sz*::c:5ffbffc3-.8T
 !,,V4 ,,V4
h1ffbffc3-.2<X
 !,,V4 ,,V4##Cd#;
h1SJT:
f/r.   c                    [        S/S9R                  S5      nUR                  S[        R                  0SS9nU(       a   [        S[        R                  /0[
        S9nO[        S[        R                  /0[
        S9n[        R                  " X45        [        S/S9R                  S5      n[        S[        R                  0SS9nUR                  USS9n[        R                  " X45        [        S[        R                  0SS9nUR                  USS9n[        S[        R                  /05      R                  [
        5      n[        R                  " X45        g )	NrG   r   datetime64[ns, UTC]Tre   r^   datetime64[ns]zdatetime64[ns, US/Pacific])r   r   r   r   r   r   rg   r   r   r   r   )r    using_array_managerrP   rS   rR   others         r+   ,test_append_empty_tz_frame_with_datetime64ns7TestAppend.test_append_empty_tz_frame_with_datetime64nsK  s   u%,,-BC S"&&M= #x?H #x?H
f/ u%,,-BCRVV},<=E5
f/ RVV},HIE5cBFF8_-44V<
f/r.   	dtype_str)r   r   Int64int64valr   c                 t   [        S/S9R                  U5      n[        S[        R                  " US5      /05      nUR	                  USS9nUR                  [
        5      n[        U[        5      (       a,  US:w  a&  U(       d  [        S[        R                  /0[
        S9n[        R                  " Xg5        g )NrG   r   nsTre   r   r^   )r   r   rg   timedelta64r   r   
isinstancestrr   r   r   )r    r   r   r   rP   r   rS   rR   s           r+   .test_append_empty_frame_with_timedelta64ns_nat9TestAppend.test_append_empty_frame_with_timedelta64ns_natc  s     u%,,Y73T!: ;<=E5<<'c3I$8AT
 !#x?H
f/r.   c                 0   [        S[        R                  " S/US905      n[        S[        R                  " US5      /05      nUR                  USS9n[        SUR                  S   UR                  S   /0[        S9n[        R                  " XV5        g )NrG   r@   r^   r   Tre   )r   r   )
r   r   r   rg   r   r   r   r   r   r   )r    r   r   rP   r   rS   rR   s          r+   (test_append_frame_with_timedelta64ns_nat3TestAppend.test_append_frame_with_timedelta64ns_naty  s     RXXqc;<=3T!: ;<=E5cBGGDM5::d3C#DEVT
f/r.    N))r   
__module____qualname____firstlineno__r,   r3   r=   rT   r[   rn   rq   r   r   r   r   
RangeIndexr   listCategoricalIndexsplitIntervalIndexfrom_breaksDatetimeIndexr   r   
MultiIndexfrom_arraysindexes_can_appendr9   markparametrizer   r   r   r   r   r   r   r   r   __static_attributes__r   r.   r+   r   r      s)    
D	+D
0-001"/$
( 	aiod5k
GMMO,
GMMOT:
$$]3
D!Q1-D!Q2.D!Q2.	
 	!!7==?GMMO"DE$ [[#)C  00< [["'1-&  
0
0,00d*0200 [[P [[UQJ/0 00$ [[P [[UQJ/0 00r.   r   )r   r   	itertoolsr   r   numpyrg   r9   pandasr   r   r   r   r   r   r	   pandas._testing_testingr   r   r   r.   r+   <module>r     s2     "      q0 q0r.   