
    i                     H    d dl Zd dlZd dlmZmZmZ d dlmZ	  G d d      Z
y)    N)	DataFrameIndex
MultiIndexc                       e Zd Zd Zd Zd Zd Zej                  j                  ddddd	d
fdddd
d	fddid	d
fddid
d	fdddd	d	fi d
d
fg      d        Z
y)TestDataFrameRenameAxisc                 Z   |j                  d      }|j                         }|j                  dd      x}}|J |J t        j                  ||       |j                  dd      }|j                         }|j                  ddd      x}}|J |J t        j                  ||       y )NfooT)inplacebar   axis)r   r
   )rename_axiscopytmassert_frame_equal)selffloat_frameexpectedresultreturn_value	no_returns         h/app/cer_product_mecsu/.venv/lib/python3.12/site-packages/pandas/tests/frame/methods/test_rename_axis.pytest_rename_axis_inplacez0TestDataFrameRenameAxis.test_rename_axis_inplace   s    **51!!##)#5#5eT#5#JJy###   
fh/**5q*9!!##)#5#5e!T#5#RRy###   
fh/    c                     t        ddgddggddg      j                  d	      }|j                  d
d      }t        ddgddggt        ddgd
      ddg      }t	        j
                  ||d       y )Nr            abcolumnsF)allows_duplicate_labelsidxr   r   nameindexr#   )check_flags)r   	set_flagsr   r   r   r   )r   dfr   r   s       r   3test_rename_axis_with_allows_duplicate_labels_falsezKTestDataFrameRenameAxis.test_rename_axis_with_allows_duplicate_labels_false   s    AA'#s<FF$) G 
 A.VaVE1a&u$=Sz
 	fhEBr   c                 `   t        ddgddgd      }t        j                  t        d      5  |j	                  t
        d       d d d        t        j                  t        d      5  |j	                  dd	d
d       d d d        t        j                  t        d      5  |j	                  t
        d       d d d        t        j                  t        d      5  |d   j	                  t
               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   r   )ABzUse `.rename`matchr   r   
      )r   r   r/   )r   pytestraises
ValueErrorr   id)r   r,   s     r   test_rename_axis_raisesz/TestDataFrameRenameAxis.test_rename_axis_raises+   s    aV1a&12]]:_= 	'NN2AN&	' ]]:_= 	3NNrb>N2	3 ]]:_= 	'NN2AN&	' ]]:_= 	$sG#	$ 	$	' 	'	3 	3	' 	'	$ 	$s/   D )D#DD$ D	DD!$D-c           	         t        j                  g dddggddg      }t        t        t	        t        |                  t	        t        |            D cg c]  }|dz  	 c}d|	      }|j                  d
d      }t        j                  |j                  t        ddgd
             |j                  d
did      }t        j                  |j                  t        ddgd             |j                  ddi	      }|j                  j                  ddgk(  sJ |j                  t        j                  d      }|j                  j                  ddgk(  sJ |j                  ddg	      }|j                  j                  ddgk(  sJ |j                         j!                  d      j#                  ddg      }|j                  dd      }|j                  j$                  dk(  sJ |j                  j$                  dk(  sJ t'        j(                  t*        d      5  |j                  d	       d d d        t'        j(                  t,        d      5  |j                  dg	       d d d        t'        j(                  t*        d      5  |j                  d        d d d        y c c}w # 1 sw Y   |xY w# 1 sw Y   QxY w# 1 sw Y   y xY w) N)r    r!   cr   r   llnn)namesr3   )xy)r)   colsr   r?   r@   r&   new)r#   r   r	   r   )r)   r   LLNNgoor"   mehr(   z	Must passr1   wrongzLength of namesbogus)rH   )r   from_productr   listrangelenr   r   assert_index_equalr#   r   r)   r>   strupperreset_index	set_indexdropr'   r5   r6   	TypeErrorr7   )r   miir,   r   sdfs         r   test_rename_axis_mapperz/TestDataFrameRenameAxis.test_rename_axis_mapper:   st   $$o1v%>tTlSuSW~&eCGn-Ma"f-MNVX

 Q/
fnneS#JV.LM ##VUO!#D
fnneS#JU.KL tUm4||!!eT]222 ciia8||!!dD\111 uen5||!!eU^333 nn((.33T3K3Hue<||  E)))~~""e+++ ]]9K8 	*NNN)	* ]]:->? 	,NN'N+	, ]]9G4 	'NNN&	' 	'I .N<	* 	*	, 	,	' 	's*   J.
%J3J?K3J<?KKz$kwargs, rename_index, rename_columnsNr   )mapperr   TFr   r)   r#   r(   c                 p   t        t        d      d      }t        ddgd      }t        j                  d      j	                  dd	      }t        |||      } |j                  d
i |}|r|j                  d       n|}	|r|j                  d       n|}
t        ||	|
      }t        j                  ||       y )Nabcr	   r&   col1col2r      r   r    )
r   rJ   nparangereshaper   r   renamer   r   )r   kwargsrename_indexrename_columnsr)   r#   datar,   r   expected_indexexpected_columnsr   s               r   test_rename_axis_nonez-TestDataFrameRenameAxis.test_rename_axis_nonee   s     d5k.(u5yy|##Aq)tUG,)&)/;d+3A7>>$/wT>3CD
fh/r   )__name__
__module____qualname__r   r-   r9   rW   r5   markparametrizeri   r^   r   r   r   r      s    0$
C$)'V [[.a($6a(%6t_dE*t,-tT:	

0
0r   r   )numpyr_   r5   pandasr   r   r   pandas._testing_testingr   r   r^   r   r   <module>rs      s&      
 o0 o0r   