
    Owgl                        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	j%                                     d        Zej                  d        Z G d d      Zy)    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      e/var/www/horilla/myenv/lib/python3.12/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                  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y)TestConcatAppendCommonzE
    Test common dtype coercion rules between concat and append.
    c                     |\  }} ||      }|dk(  r|rd}t        |t              r|j                  |k(  sJ y t        |t              r5|j	                  d      r|j                  dk(  sJ y |j                  |k(  sJ y y )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d#(?1Cc5!99###V$~~h'yyK///yyC'''	 %r.   c                 \   |\  }}|}|}|dk(  rMt        t        |      t        |      z         }t        t        |      t        |      z   t        |      z         }n||z   }||z   |z   }t        |      j                  t        |            }t        |      }	t	        j
                  ||	       t        |      j                  t        |      t        |      g      }t        |      }	t	        j
                  ||	       t        |d      }
t        |d      }|
j                  |      }t        |      }	t	        j
                  ||	       t        |d      }
t        |d      }|
j                  |      }t        |d      }	t	        j
                  ||	       t        j                  t        d      5  t        |      j                  |       d d d        t        j                  t        d      5  t        |      j                  t        |      |g       d d d        t        |      j                  t        |      d      }t        |      }	t	        j                  ||	d	       t        j                  t        |      t        |      gd      }t	        j                  ||	d	       t        |      j                  t        |      t        |      gd      }t        |      }	t	        j                  ||	       t        j                  t        |      t        |      t        |      gd      }t	        j                  ||	       t        |d      }t        |d      }|j                  |d      }t        |      }	t	        j                  ||	d	       t        j                  ||gd      }t	        j                  ||	d	       t        |d      }t        |d      }|j                  |d      }t        |d      }	t	        j                  ||	d	       t        j                  ||gd      }t	        j                  ||	d	       d
}t        j                  t        |      5  t        |      j                  |       d d d        t        j                  t        |      5  t        |      j                  t        |      |g       d d d        t        j                  t        |      5  t        j                  t        |      |g       d d d        t        j                  t        |      5  t        j                  t        |      t        |      |g       d d d        y # 1 sw Y   xY w# 1 sw Y   ^xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w)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   s   e:"4;e#<=H#DK$u+$=U$KLIu}H-I
 El!!%,/Ho
c3' El!!5<u">?I
c3' 5s#5s#iimHo
c3' 5s#5s#iimH3'
c3' ]]9,FG 	'%L&	' ]]9,FG 	7%Luu 56	7 Um##F5M#EX
sC$? iiu6TJ
sC$? Um##VE]F5M$BQU#VY
sC(iiE]F5M6%=9
 	sC( E$E$jj$j/X
sC$?iiRt4
sC$? E$E$jj$j/XC(
sC$?iiRt4
sC$?7 	 ]]9C0 	)5M!!%(	) ]]9C0 	:5M!!6%=%"89	: ]]9C0 	.IIve}e,-	. ]]9C0 	=IIve}fUmU;<	= 	=}	' 	'	7 	7d	) 	)	: 	:	. 	.	= 	=sH   1U$/&U1%U>#&V
,!V0+V"$U.1U;>V
VV"V+c                 R   |\  }}|\  }}|}d }	d }
||k(  rt        j                  d       n|dk(  s|dk(  rt        j                  d       |dk(  r8|dv r4|}
t         j                  j                  d      }|j	                  |       nQ|dk(  r8|dv r4|}
t         j                  j                  d      }|j	                  |       n|dv s|dv rt
        }	t
        }
||z   }||z   |z   }t        |      j                  t        |            }t        ||		      }t        j                  ||       t        |      j                  t        |      t        |      g      }t        ||		      }t        j                  ||       t        |      j                  t        |      d
      }t        ||
	      }t        j                  ||d
       t        j                  t        |      t        |      gd
      }t        j                  ||d
       t        |      j                  t        |      t        |      gd
      }t        ||
	      }t        j                  ||       t        j                  t        |      t        |      t        |      gd
      }t        j                  ||       y )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   sp   ee 4<KKMNZ4:#5KK;< 6>d&::  $;;$$,H$ID%V^(< <#;;$$,H$ID%FF$ S
 K
 %O%5=EME)	 El!!%,/HO4
c3' El!!5<u">?I_5
c3' Um##F5M#EX%56
sC$? iiu6TJ
sC$? Um##VE]F5M$BQU#VY&67
sC( iiE]F5M6%=9
 	sC(r.   c                 0   t        j                  ddg      }t        j                  ddg      }t        t        j                  d      t        j                  d      t        j
                  d      t        j
                  d      g      }|j                  |      }t        j                  ||       t        |d   t         j                        sJ t        |d   t         j
                        sJ t        |      }t        |      }|j                  |      }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 y )	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\*\*X&X&	
 jjo
c3'#a&",,///#b'2<<000SkSkkk#
sF3l$CD#((1+r||444#((2,555iic
#
sF3l$CD#((1+r||444#((2,555r.   c                    |}t        j                  ddg|      }t        j                  ddg|      }t        j                  g d|      }|j                  |      }t        j                  ||       t        |      }t        |      }|j                  |      }t        j                  |t        |g d             t        j                  ||g      }t        j                  |t        |g d             y )	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
 kk$
c3'd|d|ll4 
sF3l$CDiit%
sF3l$C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|      j	                  d      }t        d|d	d
g      }t        j                  |j                  |      |       t        j                  t        j                  ||g      |       y )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     mm,LsrRl;CsCj9sCj9""R
 '$- 	 3*=
ckk#.4
biic
3S9r.   c           	         |}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        j                  ||       t        |      }t        |      }|j                  |      }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              }|j                  |	      }t        j                  ||       t        |      }t        |	      }
|j                  |
      }t        j                  |t        |g d             t        j                  ||
g      }t        j                  |t        |g d             y )
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  s    | <D| <=\b1\b1\*\*	 
 kk$
c3'd|d|ll4 
sF3l$CDiit%
sF3l$CD | <N\b1\b1\l;\l;	 
 kk$
c3'd|d|ll4 
sF3l$CDiit%
sF3l$CDr.   c                    t        j                  ddgd      }t        j                  ddgd      }t        j                  g dd      }|j                  |      }t        j                  ||       t        |      }t        |      }|j                  |      }t        j                  |t        |g d	             t        j                  ||g      }t        j                  |t        |g d	             y )
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    nni3#>nni3#>nnIPSTjjo
c3'SkSkkk#
sF3l$CDiic
#
sF3l$C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              }|j                  |      }t        j                  ||       t        |      }t        |      }|j                  |      }t        j                  |t        |g d	
             t        j                  ||g      }t        j                  |t        |g d	
             y )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  s    nni3#>nnlL9D		)#.		)#.		,S1		,S1	 
 jjo
c3'SkSkkk#
sF3l$CDiic
#
sF3l$C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              }|j                  |      }t        j                  ||       t        |      }t        |      }|j                  |      }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              }|j                  |      }t        j                  ||       t        |      }t        |      }|j                  |      }t        j                  |t        |g d	             t        j                  ||g      }t        j                  |t        |g d	             y )
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    nni3#>8 45		)#.		)#.X&X&	 
 jjo
c3'SkSkkk#
sF3l$CDiic
#
sF3l$CD X&X&		)#.		)#.	 
 jjo
c3'SkSkkk#
sF3l$CDiic
#
sF3l$C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                  |j                  |d      |       t        ddgd      }t        ddgd      }t        g d	      }t        j                  t        j                  ||gd      |       t        j                  |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                  |j                  |d      |       y )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266N*5IZ0aBFFAq!,J?
ryy"bEsK
rzz"4z@#F QF*-QF*-\"
ryy"bEsK
rzz"4z@#F RRVV$J7RVVQ1%Z8b"bffbffaA6bjjI
ryy"bEsK
rzz"4z@#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
                  ||       y )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L;?KLAq656?S
 	vx0r.   c                 l   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
                  |j                  |d      |       t        dddddt        j                  gt        j                        }t	        j
                  t        j                  ||gd      |       t	        j
                  |j                  |d      |       t        ddgd      }t        ddg      }t        g d	      }t	        j
                  t        j                  ||gd      |       t	        j
                  |j                  |d      |       t        g d
      }t	        j
                  t        j                  ||gd      |       t	        j
                  |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
                  |j                  |d      |       t        dddddt        j                  gt        j                        }t	        j
                  t        j                  ||gd      |       t	        j
                  |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
                  |j                  |d      |       t        dddddt        j                  g      }t	        j
                  t        j                  ||gd      |       t	        j
                  |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
                  |j                  |d      |       t        t        j                  t        j                  t        j                  ddg      }t	        j
                  t        j                  ||gd      |       t	        j
                  |j                  |d      |       y )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266N*5IaBFFAq!,BJJ?
ryy"bEsK
rzz"4z@#F aAq!RVV,BJJ?
ryy"bEsK
rzz"4z@#F QF*-QF^\"
ryy"bEsK
rzz"4z@#F\"
ryy"bEsK
rzz"4z@#F RRVV$J7Ib"bffaA.bjjA
ryy"bEsK
rzz"4z@#FaAr2rvv.bjjA
ryy"bEsK
rzz"4z@#F RRVV$J7O$b"bffc345
ryy"bEsK
rzz"4z@#Fc3RRVV45
ryy"bEsK
rzz"4z@#F RHJ/RVVRVVRVV,-b"bffbffbff56
ryy"bEsK
rzz"4z@#Fbffbffbffb"56
ryy"bEsK
rzz"4z@#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                  |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                  |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                  |j                  ||gd      |       t        g d      }t        j                  t        j                  |||gd      |       t        j                  |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                  |j                  ||gd      |       t        g d      }t        j                  t        j                  |||gd      |       t        j                  |j                  ||gd      |       y )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<  s    Q266N*5IZ0Q1a()aBFFAq!Q1a@P
ryy"b"DI3O
rzz2r(zFLaAq"&&!Q1a@P
ryy"b"DI3O
rzz2r(zFL IZ0IZ0I01
ryy"b"DI3O
rzz2r(zFL01
ryy"b"DI3O
rzz2r(zFL IZ0IZ0L!34
ryy"b"DI3O
rzz2r(zFL34
ryy"b"DI3O
rzz2r(zF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                  ||       |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                  ||       |j                  |||||gd	      }t        j                  ||       y )
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  sg    QF*-QF*-QF^QF*-QK IZ0 aAq!Q1aAqABiiRRR0tD
sC(jj"b"b"-DjA
sC(aAq"&&!Q1aAqABiiRRR0tD
sC(jj"b"b"-Dj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
                  |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
                  |j                  ||gd      |       y )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Arvv=>K	489[!Q1a!8$GH
ryy"bEsK
rzz"4z@#F[!Q1aArvv!FPTUV
ryy"b"DI3O
rzz2r(zF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                  |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                  |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                  |j                  |d      |       t        j                  t        j                  ||gd      |       t        j                  |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                  |j                  |d      |       y )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   
 BHHbffbff-RZZ@
SRVVQK bffbffbffa01
ryy"bEsK
rzz"4z@#FQKz2RVVRVV$%a0@
ryy"bEsK
rzz"4z@#F RVVRVV$J7RVVRVV$%bffbffbffbff56
ryy"bEsK
rzz"4z@#F
ryy"bEsK
rzz"4z@#F RVVRVV$J7RVVRVV$J7bffbffbffbff5ZH
ryy"bEsK
rzz"4z@#Fr.   c                    t        g d      }t        ddgd      }d}t        j                  t        |      5  t        j                  t        j                  ||gd      |       t        j                  |j                  |d      |       d d d        t        j                  t        |      5  t        j                  t        j                  ||gd      |       t        j                  |j                  |d      |       d d d        t        g d      }t        g d      }t        j                  t        j                  ||gd      |       t        j                  |j                  |d      |       t        g d      }t        g d	      }t        j                  t        j                  ||gd      |       t        j                  |j                  |d      |       t        j                  t        j                  ||gd      |       t        j                  |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                  |j                  |d      |       d d d        t        j                  t        |      5  t        j                  t        j                  ||gd      |       t        j                  |j                  |d      |       d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w)
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 	J""299b"XD#I2N""2::bt:#DbI	J ''SA 	J""299b"XD#I2N""2::bt:#DbI	J Bj)Bj)
ryy"bErJ
rzz"4z@"EBj)Bh' 	ryy"bErJ
rzz"4z@"E
ryy"bErJ
rzz"4z@"EBj)RVVRVV$% bffbff%&''SA 	K""299b"XD#I3O""2::bt:#DcJ	K ''SA 	K""299b"XD#I3O""2::bt:#DcJ	K 	KA	J 	J	J 	J0	K 	K	K 	Ks3   AN2AN9AN)1AN5NN&)N25N>c                 r   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                  |j                  |      |       t        ddgg d      }ddg}t        ||d      }	t        j                  ||	gd      }
t        t        d      g dd      }t        j                  |
|       |j                  |	d      }
t        j                  |
|       y )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  s   3*#s<1vT23/S#JGu5U<=PQ
biiR137
bjjnc2 C:/BA"+T5,I"Jii45DIf|DE
c3'jj0tj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=TJ)X6@E* [[T#QR: S: 3EjE$E4.E`G61>G@(MT).M$GL)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      sc        'RVVS)#O4%\*\*\* \l;\l;\l;+ X&X&X&  		)#.		)#.		)#.+	
4 %'7>?>
  z
( z
(r.   