
    Egl                        d dl Zd dlZd dlZd dlmZmZmZmZ d dl	m
Z  ej         eg dg ddej        dg eg d          g d ej        d	           ej        d
           ej        d          g ej        d	d           ej        d
d           ej        dd          g ej        d           ej        d           ej        d          g ej        dd           ej        dd           ej        dd          gd	                                                    d             Zej        d             Z G d d          ZdS )    N)Categorical	DataFrameIndexSeries)TFT         g?gffffff
@)XYZabc
2011-01-01
2011-01-02z
2011-01-03
US/Easterntz1 days2 daysz3 days2011-01Mfreq2011-02z2011-03)	boolint64float64categoryobjectzdatetime64[ns]datetime64[ns, US/Eastern]timedelta64[ns]z	period[M])paramsc                     | j         \  }}||fS N)param)requestkeydatas      c/var/www/sysmax/venv/lib/python3.11/site-packages/pandas/tests/reshape/concat/test_append_common.pyitemr-      s    @ IC9    c                     | S r'    )r-   s    r,   item2r1   2   s    Kr.   c                       e Zd ZdZd Zd Zd Zd Zd Ze	j
                            dg d          d	             Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZdS )TestConcatAppendCommonzE
    Test common dtype coercion rules between concat and append.
    c                    |\  }} ||          }|dk    r|rd}t          |t                    r|j        |k    sJ d S t          |t                    r1|                    d          r|j        dk    sJ d S |j        |k    sJ d S d S )Nr"   stringperiodz	Period[M])
isinstancer   dtyper   
startswith)selfr-   index_or_seriesusing_infer_stringtypvalsobjs          r,   test_dtypesz"TestConcatAppendCommon.test_dtypes<   s    	Tod##(??1?Cc5!! 	(9######V$$ 	(~~h'' (yK//////yC''''		( 	( ('r.   c                 6   |\  }}|}|}|dk    rit          t          |          t          |          z             }t          t          |          t          |          z   t          |          z             }n||z   }||z   |z   }t          |                              t          |                    }t          |          }	t	          j        ||	           t          |                              t          |          t          |          g          }t          |          }	t	          j        ||	           t          |d          }
t          |d          }|
                    |          }t          |          }	t	          j        ||	           t          |d          }
t          |d          }|
                    |          }t          |d          }	t	          j        ||	           t          j        t          d          5  t          |                              |           d d d            n# 1 swxY w Y   t          j        t          d          5  t          |                              t          |          |g           d d d            n# 1 swxY w Y   t          |          
                    t          |          d          }t          |          }	t	          j        ||	d	           t          j        t          |          t          |          gd          }t	          j        ||	d	           t          |          
                    t          |          t          |          gd          }t          |          }	t	          j        ||	           t          j        t          |          t          |          t          |          gd          }t	          j        ||	           t          |d          }t          |d          }|
                    |d          }t          |          }	t	          j        ||	d	           t          j        ||gd          }t	          j        ||	d	           t          |d          }t          |d          }|
                    |d          }t          |d          }	t	          j        ||	d	           t          j        ||gd          }t	          j        ||	d	           d
}t          j        t          |          5  t          |          
                    |           d d d            n# 1 swxY w Y   t          j        t          |          5  t          |          
                    t          |          |g           d d d            n# 1 swxY w Y   t          j        t          |          5  t          j        t          |          |g           d d d            n# 1 swxY w Y   t          j        t          |          5  t          j        t          |          t          |          |g           d d d            d S # 1 swxY w Y   d S )Nr!   x)nameyzall inputs must be IndexmatchTignore_indexcheck_index_typezPcannot concatenate object of type '.+'; only Series and DataFrame objs are valid)r   listr   appendtmassert_index_equalpytestraises	TypeErrorr   _appendassert_series_equalpdconcat)r:   r-   typ1vals1vals2vals3exp_data	exp_data3resexpi1i2s1s2msgs                  r,   test_concatlike_same_dtypesz2TestConcatAppendCommon.test_concatlike_same_dtypesJ   sb   e:"4;;e#<==H#DKK$u++$=U$KLLIIu}H-I
 Ell!!%,,//Hoo
c3''' Ell!!5<<u">??I
c3''' 5s###5s###iimmHoo
c3''' 5s###5s###iimmH3'''
c3''' ]9,FGGG 	' 	'%LL&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' ]9,FGGG 	7 	7%LLuu 5666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 Umm##F5MM#EEX
sC$???? iu6TJJJ
sC$???? Umm##VE]]F5MM$BQU#VVY
sC(((iE]]F5MM6%==9
 
 
 	sC((( E$$$E$$$jj$j//X
sC$????iRt444
sC$???? E$$$E$$$jj$j//XC(((
sC$????iRt444
sC$????7 	 ]9C000 	) 	)5MM!!%(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) ]9C000 	: 	:5MM!!6%==%"8999	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: ]9C000 	. 	.Ive}}e,---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. ]9C000 	= 	=Ive}}fUmmU;<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	=sl   #H==II#2J!!J%(J% #U//U36U32WWW9$X))X-0X-2ZZZc                    |\  }}|\  }}|}d }	d }
||k    rt          j        d           n |dk    s|dk    rt          j        d           |dk    r<|dv r8|}
t           j                            d          }|                    |           nX|dk    r<|dv r8|}
t           j                            d          }|                    |           n|dv s|dv rt
          }	t
          }
||z   }||z   |z   }t          |                              t          |                    }t          ||		          }t          j	        ||           t          |                              t          |          t          |          g          }t          ||		          }t          j	        ||           t          |                              t          |          d
          }t          ||
	          }t          j        ||d
           t          j        t          |          t          |          gd
          }t          j        ||d
           t          |                              t          |          t          |          gd
          }t          ||
	          }t          j        ||           t          j        t          |          t          |          t          |          gd
          }t          j        ||           d S )Nz3same dtype is tested in test_concatlike_same_dtypesr!   z!categorical type tested elsewherer   )r   r    zGH#39187 casting to object)reason>   r$   r#   r8   TrG   rI   )rO   skipmarkxfailapplymarkerr"   r   rL   rM   rN   r   rR   rS   rT   rU   )r:   r-   r1   r)   rV   rW   typ2rX   rY   exp_index_dtypeexp_series_dtyperh   rZ   r[   r\   r]   s                   r,   test_concatlike_dtypes_coercionz6TestConcatAppendCommon.test_concatlike_dtypes_coercion   s   ee 4<<KMNNNNZ4:#5#5K;<<< 6>>d&:::  $;$$,H$IID%%%%V^^(< < <#;$$,H$IID%%%%FFF$ S
 K
 K
 %O%5=EME)	 Ell!!%,,//HO444
c3''' Ell!!5<<u">??I_555
c3''' Umm##F5MM#EEX%5666
sC$???? iu6TJJJ
sC$???? Umm##VE]]F5MM$BQU#VVY&6777
sC((( iE]]F5MM6%==9
 
 
 	sC(((((r.   c                 R   t          j        ddg          }t          j        ddg          }t          t          j        d          t          j        d          t          j        d          t          j        d          g          }|                    |          }t          j        ||           t          |d         t           j                  sJ t          |d         t           j                  sJ t          |          }t          |          }|                    |          }t          j        |t          |g d                     t          |j        d         t           j                  sJ t          |j        d         t           j                  sJ t          j        ||g          }t          j        |t          |g d                     t          |j        d         t           j                  sJ t          |j        d         t           j                  sJ d S )	Nr   r   r   r   r   r   r   r   r   index)rT   DatetimeIndexTimedeltaIndexr   	Timestamp	TimedeltarL   rM   rN   r7   r   rR   rS   ilocrU   )r:   dtitdir]   r\   dtstdss          r,   .test_concatlike_common_coerce_to_pandas_objectzETestConcatAppendCommon.test_concatlike_common_coerce_to_pandas_object   s    l;<<8 455\**\**X&&X&&	
 
 jjoo
c3'''#a&",/////#b'2<00000SkkSkkkk#
sF3lll$C$C$CDDD#(1+r|44444#(2,55555ic
##
sF3lll$C$C$CDDD#(1+r|44444#(2,5555555r.   c                    |}t          j        ddg|          }t          j        ddg|          }t          j        g d|          }|                    |          }t          j        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d                     t          j        ||g          }t          j        |t          |g d                     d S )	Nr   r   r   
2012-01-01
2012-01-02)r   r   r   r   rq   rr   )	rT   rt   rL   rM   rN   r   rR   rS   rU   )	r:   tz_aware_fixturer   dti1dti2r]   r\   dts1dts2s	            r,   test_concatlike_datetimetzz1TestConcatAppendCommon.test_concatlike_datetimetz   s   | <DDD| <DDDDDD
 
 
 kk$
c3'''d||d||ll4  
sF3lll$C$C$CDDDit%%
sF3lll$C$C$CDDDDDr.   r   )UTCr   z
Asia/TokyoEST5EDTc                    t          j        ddd|          }t          j        ddg|          }t          d|d	d
g          }t          d|d	d
g          }t          j        g d|                              d          }t          d|d	d
g          }t          j        |                    |          |           t          j        t          j        ||g          |           d S )N
2014-07-15
2014-07-17D)startendr   r   
2014-07-11
2014-07-21r   r   AB)rs   columns)r   z
2014-07-16r   r   r   ns)	rT   
date_rangert   r   as_unitrM   assert_frame_equalrR   rU   )r:   r   ix1ix2df1df2exp_idxr]   s           r,    test_concatlike_datetimetz_shortz7TestConcatAppendCommon.test_concatlike_datetimetz_short5  s     m,LsrRRRl;CCCsCj999sCj999"RRR
 
 
 '$-- 	 3*===
ckk#..444
bic
33S99999r.   c           	      2   |}t          j        ddg|          }t          j        ddg          }t          t          j        d|          t          j        d|          t          j        d          t          j        d          gt                    }|                    |          }t          j        ||           t          |          }t          |          }|	                    |          }t          j
        |t          |g d                     t          j        ||g          }t          j
        |t          |g d                     t          j        ddgd	          }	t          t          j        d|          t          j        d|          t          j        dd	          t          j        dd	          gt                    }|                    |	          }t          j        ||           t          |          }t          |	          }
|	                    |
          }t          j
        |t          |g d                     t          j        ||
g          }t          j
        |t          |g d                     d S )
Nr   r   r   r   r   rf   rq   rr   z
US/Pacific)rT   rt   r   rv   r"   rL   rM   rN   r   rR   rS   rU   )r:   r   r   r   r   r]   r\   r   r   dti3dts3s              r,   $test_concatlike_datetimetz_to_objectz;TestConcatAppendCommon.test_concatlike_datetimetz_to_objectF  sl    | <DDD| <==\b111\b111\**\**	 
 
 
 kk$
c3'''d||d||ll4  
sF3lll$C$C$CDDDit%%
sF3lll$C$C$CDDD | <NNN\b111\b111\l;;;\l;;;	 
 
 
 kk$
c3'''d||d||ll4  
sF3lll$C$C$CDDDit%%
sF3lll$C$C$CDDDDDr.   c                    t          j        ddgd          }t          j        ddgd          }t          j        g dd          }|                    |          }t          j        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d	                     t          j        ||g          }t          j        |t          |g d	                     d S )
Nr   r   r   r   2012-012012-02)r   r   r   r   rq   rr   )	rT   PeriodIndexrL   rM   rN   r   rR   rS   rU   r:   pi1pi2r]   r\   ps1ps2s          r,   test_concatlike_common_periodz4TestConcatAppendCommon.test_concatlike_common_period{  s    ni3#>>>ni3#>>>nIIIPSTTTjjoo
c3'''SkkSkkkk#
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDDDDr.   c           	         t          j        ddgd          }t          j        ddgd          }t          t          j        dd          t          j        dd          t          j        dd          t          j        dd          gt                    }|                    |          }t          j        ||           t          |          }t          |          }|	                    |          }t          j
        |t          |g d	
                     t          j        ||g          }t          j
        |t          |g d	
                     d S )Nr   r   r   r   r   z
2012-02-01r   rf   rq   rr   )rT   r   r   Periodr"   rL   rM   rN   r   rR   rS   rU   r   s          r,   1test_concatlike_common_period_diff_freq_to_objectzHTestConcatAppendCommon.test_concatlike_common_period_diff_freq_to_object  sF   ni3#>>>nlL9DDD	)#...	)#...	,S111	,S111	 
 
 
 jjoo
c3'''SkkSkkkk#
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDDDDr.   c           	         t          j        ddgd          }t          j        ddg          }t          t          j        dd          t          j        dd          t          j        d          t          j        d          gt                    }|                    |          }t          j	        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d	                     t          j        ||g          }t          j        |t          |g d	                     t          t          j        d          t          j        d          t          j        dd          t          j        dd          gt                    }|                    |          }t          j	        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d	                     t          j        ||g          }t          j        |t          |g d	                     d S )
Nr   r   r   r   r   r   rf   rq   rr   )rT   r   ru   r   r   rw   r"   rL   rM   rN   r   rR   rS   rU   )r:   r   rz   r]   r\   r   r|   s          r,   0test_concatlike_common_period_mixed_dt_to_objectzGTestConcatAppendCommon.test_concatlike_common_period_mixed_dt_to_object  s>    ni3#>>>8 455	)#...	)#...X&&X&&	 
 
 
 jjoo
c3'''SkkSkkkk#
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDD X&&X&&	)#...	)#...	 
 
 
 jjoo
c3'''SkkSkkkk#
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDDDDr.   c           	         t          ddt          j        gd          }t          g dd          }t          ddt          j        dddgd          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          ddgd          }t          ddgd          }t          g d	          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          d
dt          j        gd          }t          t          j        dddgd          }t          d
dt          j        t          j        dddgt          j                  }t          j        t          j        ||gd          |           t          j        |                    |d          |           d S )Nr   r	   r!   rf   r	   r   r	   TrG   r
   r
   r	   r	   r   
      )	r   npnanrM   rS   rT   rU   rR   r    r:   r`   ra   r]   s       r,   test_concat_categoricalz.TestConcatAppendCommon.test_concat_categorical  s    Q26N*555IIIZ000aBFAq!,J???
ry"bEEEsKKK
rzz"4z@@#FFF QF*---QF*---\\\""
ry"bEEEsKKK
rzz"4z@@#FFF RRV$J777RVQ1%Z888b"bfbfaA6bjIII
ry"bEEEsKKK
rzz"4z@@#FFFFFr.   c                 ,   t          t          g dg d                    }t          t          g dg d                    }t          j        ||gd          }t          t          g dg d                    }t	          j        ||           d S )Nr   
categories)r   r   r   TrG   )r   r   r   r   r   r   )r   r   rT   rU   rM   rS   )r:   r   r   resultexpecteds        r,   6test_union_categorical_same_categories_different_orderzMTestConcatAppendCommon.test_union_categorical_same_categories_different_order  s    ;???KKKLL;???KKKLLAq6555666???SSS
 
 	vx00000r.   c                 r   t          ddt          j        gd          }t          g d          }t          ddt          j        dddgt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          dddddt          j        gt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddgd          }t          ddg          }t          g d	          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          g d
          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddt          j        gd          }t          g d          }t          ddt          j        dddgt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          dddddt          j        gt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddt          j        gd          }t          g d          }t          ddt          j        dddg          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          dddddt          j        g          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddgd          }t          t          j        t          j        t          j        g          }t          ddt          j        t          j        t          j        g          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          t          j        t          j        t          j        ddg          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           d S )Nr   r	   r!   rf   r   TrG   r
   r   )r	   r   r
   r	   r   r   r   r
   r	   r   r   r   r   )	r   r   r   r    rM   rS   rT   rU   rR   r   s       r,    test_concat_categorical_coercionz7TestConcatAppendCommon.test_concat_categorical_coercion  s    Q26N*555IIIaBFAq!,BJ???
ry"bEEEsKKK
rzz"4z@@#FFF aAq!RV,BJ???
ry"bEEEsKKK
rzz"4z@@#FFF QF*---QF^^\\\""
ry"bEEEsKKK
rzz"4z@@#FFF\\\""
ry"bEEEsKKK
rzz"4z@@#FFF RRV$J777IIIb"bfaA.bjAAA
ry"bEEEsKKK
rzz"4z@@#FFFaAr2rv.bjAAA
ry"bEEEsKKK
rzz"4z@@#FFF RRV$J777OOO$$b"bfc3455
ry"bEEEsKKK
rzz"4z@@#FFFc3RRV455
ry"bEEEsKKK
rzz"4z@@#FFF RHJ///RVRVRV,--b"bfbfbf566
ry"bEEEsKKK
rzz"4z@@#FFFbfbfbfb"566
ry"bEEEsKKK
rzz"4z@@#FFFFFr.   c                    t          ddt          j        gd          }t          g dd          }t          ddddt          j        g          }t          ddt          j        dddddddt          j        gd          }t          j        t          j        |||gd          |           t          j        |                    ||gd          |           t          ddddt          j        ddt          j        dddgd          }t          j        t          j        |||gd          |           t          j        |                    ||gd          |           t          g d	d          }t          g d
d          }t          g d          }t          g d          }t          j        t          j        |||gd          |           t          j        |                    ||gd          |           t          g d          }t          j        t          j        |||gd          |           t          j        |                    ||gd          |           t          g d	d          }t          g d
d          }t          g d          }t          g d          }t          j        t          j        |||gd          |           t          j        |                    ||gd          |           t          g d          }t          j        t          j        |||gd          |           t          j        |                    ||gd          |           d S )Nr   r	   r!   rf   r   floatTrG   )         r   )r   r
   r   )	r   r   r   r   r	   r
   r   r
   r   )	r   r
   r   r   r   r   r   r	   r
   )r   r      )	r   r   r   r   r	   r
   r   r   r   )	r   r   r   r   r   r   r   r	   r
   )r   r   r   rM   rS   rT   rU   rR   )r:   r`   ra   s3r]   s        r,   &test_concat_categorical_3elem_coercionz=TestConcatAppendCommon.test_concat_categorical_3elem_coercion<  sV    Q26N*555IIIZ000Q1a())aBFAq!Q1a@PPP
ry"b"DIII3OOO
rzz2r(zFFLLLaAq"&!Q1a@PPP
ry"b"DIII3OOO
rzz2r(zFFLLL IIIZ000IIIZ000III00011
ry"b"DIII3OOO
rzz2r(zFFLLL00011
ry"b"DIII3OOO
rzz2r(zFFLLL IIIZ000IIIZ000LLL!!33344
ry"b"DIII3OOO
rzz2r(zFFLLL33344
ry"b"DIII3OOO
rzz2r(zFFLLLLLr.   c                    t          ddgd          }t          ddgd          }t          ddg          }t          ddgd          }t          dt          j        g          }t          g dd          }t          dddddddddt          j        dddg          }t          j        ||||||gd	          }t          j        ||           |                    |||||gd	          }t          j        ||           t          ddddt          j        ddddddddg          }t          j        ||||||gd	          }t          j        ||           |                    |||||gd	          }t          j        ||           d S )
Nr   r
   r!   rf   r   r	   r   TrG   )r   r   r   rT   rU   rM   rS   rR   )	r:   r`   ra   r   s4s5s6r]   r\   s	            r,   &test_concat_categorical_multi_coercionz=TestConcatAppendCommon.test_concat_categorical_multi_coercionf  s    QF*---QF*---QF^^QF*---QK  IIIZ000 aAq!Q1aAqABBiRRR0tDDD
sC(((jj"b"b"-DjAA
sC(((aAq"&!Q1aAqABBiRRR0tDDD
sC(((jj"b"b"-DjAA
sC(((((r.   c                    t          t          ddt          j        gd                    }t          t          g dd                    }t          t          ddt          j        dddgd                    }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          t          ddt          j        dddddt          j        g	d                    }t	          j        t          j        |||gd          |           t	          j        |                    ||gd          |           d S )Nr   r	   T)orderedr   rG   )	r   r   r   r   rM   rS   rT   rU   rR   r   s       r,   test_concat_categorical_orderedz6TestConcatAppendCommon.test_concat_categorical_ordered}  s=    KArv===>>K			488899[!Q1a!8$GGGHH
ry"bEEEsKKK
rzz"4z@@#FFF[!Q1aArv!FPTUUUVV
ry"b"DIII3OOO
rzz2r(zFFLLLLLr.   c                    t          t          j        t          j        t          j        gt          j                  d          }t          t          j        dg          }t          t          j        t          j        t          j        dg          }t          j        t          j        ||gd          |           t          j        |	                    |d          |           t          dt          j        gd          }t          t          j        t          j        g          }t          dt          j        t          j        t          j        gd          }t          j        t          j        ||gd          |           t          j        |	                    |d          |           t          t          j        t          j        gd          }t          t          j        t          j        g          }t          t          j        t          j        t          j        t          j        g          }t          j        t          j        ||gd          |           t          j        |	                    |d          |           t          j        t          j        ||gd          |           t          j        |	                    |d          |           t          t          j        t          j        gd          }t          t          j        t          j        gd          }t          t          j        t          j        t          j        t          j        gd          }t          j        t          j        ||gd          |           t          j        |	                    |d          |           d S )Nrf   r!   r   TrG   r   )
r   r   arrayr   r    rM   rS   rT   rU   rR   r   s       r,   $test_concat_categorical_coercion_nanz;TestConcatAppendCommon.test_concat_categorical_coercion_nan  s   
 BHbfbf-RZ@@@
SSSRVQK  bfbfbfa011
ry"bEEEsKKK
rzz"4z@@#FFFQKz222RVRV$%%a0@@@
ry"bEEEsKKK
rzz"4z@@#FFF RVRV$J777RVRV$%%bfbfbfbf566
ry"bEEEsKKK
rzz"4z@@#FFF
ry"bEEEsKKK
rzz"4z@@#FFF RVRV$J777RVRV$J777bfbfbfbf5ZHHH
ry"bEEEsKKK
rzz"4z@@#FFFFFr.   c                    t          g d          }t          ddgd          }d}t          j        t          |          5  t          j        t          j        ||gd          |           t          j        |                    |d          |           d d d            n# 1 swxY w Y   t          j        t          |          5  t          j        t          j        ||gd          |           t          j        |                    |d          |           d d d            n# 1 swxY w Y   t          g d          }t          g d          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          g d          }t          g d	          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          j        t          j        ||gd          |           t          j        |                    |d          |           t          g d          }t          t          j	        t          j	        g          }t          t          j	        t          j	        g          }t          j        t          |          5  t          j        t          j        ||gd          |           t          j        |                    |d          |           d d d            n# 1 swxY w Y   t          j        t          |          5  t          j        t          j        ||gd          |           t          j        |                    |d          |           d d d            d S # 1 swxY w Y   d S )
Nr!   rf   r   r	   zDThe behavior of array concatenation with empty entries is deprecatedrE   TrG   r"   )
r   rM   assert_produces_warningFutureWarningrS   rT   rU   rR   r   r   )r:   r`   ra   rb   r]   s        r,   test_concat_categorical_emptyz4TestConcatAppendCommon.test_concat_categorical_empty  s    Bj)))QF*---T'SAAA 	J 	J"29b"XD#I#I#I2NNN"2::bt:#D#DbIII	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 'SAAA 	J 	J"29b"XD#I#I#I2NNN"2::bt:#D#DbIII	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J Bj)))Bj)))
ry"bEEErJJJ
rzz"4z@@"EEEBj)))Bh''' 	ry"bEEErJJJ
rzz"4z@@"EEE
ry"bEEErJJJ
rzz"4z@@"EEEBj)))RVRV$%% bfbf%&&'SAAA 	K 	K"29b"XD#I#I#I3OOO"2::bt:#D#DcJJJ	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 'SAAA 	K 	K"29b"XD#I#I#I3OOO"2::bt:#D#DcJJJ	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	KsL   AB$$B(+B(
AD,,D03D00AMMM8AOO"Oc                    t          ddgddg          }ddg}t          ||d          }t          g dddg          }g d}t          ||dt          g d	          
          }t          j        t          j        ||g          |           t          j        |                    |          |           t          ddgg d          }ddg}t          ||d          }	t          j        ||	gd          }
t          t          d          g dd          }t          j        |
|           |                    |	d          }
t          j        |
|           d S )Nr   r   r   r   r	   )catsr>   )r   r   r   r   )r   r	   r   r	   rq   rr   r   TrG   abab)	r   r   r   rM   r   rT   rU   rR   rK   )r:   catr>   dfcat2rX   r]   cat3rY   df_different_categoriesr\   s              r,   test_categorical_concat_appendz5TestConcatAppendCommon.test_categorical_concat_append  sz   3*#s<<<1vT2233///S#JGGGu55U<<<=P=PQQQ
biR113777
bjjnnc222 C:///BBBA"+T5,I,I"J"Ji45DIIIf|||DDEE
c3'''jj0tjDD
c3'''''r.   N)__name__
__module____qualname____doc__r@   rc   rn   r}   r   rO   rh   parametrizer   r   r   r   r   r   r   r   r   r   r   r   r   r   r0   r.   r,   r3   r3   7   s        ( ( (h= h= h=TJ) J) J)X6 6 6@E E E* [T#Q#Q#QRR: : SR: 3E 3E 3EjE E E$E E E4.E .E .E`G G G61 1 1>G >G >G@(M (M (MT) ) ).M M M$G $G $GL)K )K )KV( ( ( ( (r.   r3   )numpyr   rO   pandasrT   r   r   r   r   pandas._testing_testingrM   fixturerK   r   rv   rw   r   itemsr-   r1   r3   r0   r.   r,   <module>r      sD                             4'''YYRVS)#OOO44%oo\**\**\** \l;;;\l;;;\l;;;+ X&&X&&X&&  	)#...	)#...	)#...+	
 	
4 %''7   > ? >
   z
( z
( z
( z
( z
( z
( z
( z
( z
( z
(r.   