o
    �¨Êhû  ã                   @   sB   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„ dƒZ
dS )é    N)Ú	DataFrameÚIndexÚ
MultiIndexc                   @   s„   e Zd Zdd„ Zdd„ Zdd„ Ze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d„ ƒZ	dS )ÚTestDataFrameRenameAxisc                 C   sš   |  d¡}| ¡ }|j ddd� }}|d u sJ ‚|d u sJ ‚t ||¡ |j ddd�}| ¡ }|j dddd� }}|d u s?J ‚|d u sEJ ‚t ||¡ d S )NÚfooT)ÚinplaceÚbaré   ©Úaxis)r   r   )Úrename_axisÚcopyÚtmÚassert_frame_equal)ÚselfÚfloat_frameÚexpectedÚresultÚreturn_valueÚ	no_return© r   ú]/var/www/html/env/lib/python3.10/site-packages/pandas/tests/frame/methods/test_rename_axis.pyÚtest_rename_axis_inplace   s   
z0TestDataFrameRenameAxis.test_rename_axis_inplacec                 C   s  t ddgddgdœƒ}tjtdd�� |jtdd� W d   ƒ n1 s$w   Y  tjtdd�� |jdd	d
œdd� W d   ƒ n1 sEw   Y  tjtdd�� |jtdd� W d   ƒ n1 scw   Y  tjtdd�� |d  t¡ W d   ƒ d S 1 s‚w   Y  d S )Nr	   é   )ÚAÚBzUse `.rename`©Úmatchr   r
   é
   é   )r   r	   r   )r   ÚpytestÚraisesÚ
ValueErrorr   Úid)r   Údfr   r   r   Útest_rename_axis_raises   s   ÿÿÿ"ÿz/TestDataFrameRenameAxis.test_rename_axis_raisesc                 C   s  t jg d¢ddggddgd�}tttt|ƒƒƒdd„ tt|ƒƒD ƒd	œ|d
�}|jddd�}t |j	t
ddgdd�¡ |jddidd�}t |j	t
ddgdd�¡ |jddid
�}|jjddgkscJ ‚|jtjdd�}|jjddgksuJ ‚|jddgd
�}|jjddgks‡J ‚| ¡  d¡jddgd�}|jddd�}|jjdks£J ‚|j	jdks«J ‚tjtdd�� |jdd
� W d   ƒ n1 sÃw   Y  tjtdd�� |jdgd
� W d   ƒ n1 sáw   Y  tjtdd�� |jd d � W d   ƒ d S 1 sÿw   Y  d S )!N)ÚaÚbÚcr	   r   ÚllÚnn)Únamesc                 S   s   g | ]}|d  ‘qS )r   r   )Ú.0Úir   r   r   Ú
<listcomp>2   s    zCTestDataFrameRenameAxis.test_rename_axis_mapper.<locals>.<listcomp>)ÚxÚy)ÚindexÚcolsr
   r/   r0   ©ÚnameÚnew)Úcolumnsr   r   r   )r1   r   ÚLLÚNNÚgoo)r6   Úmeh©r1   r6   z	Must passr   ÚwrongzLength of namesÚbogus)r=   )r   Úfrom_productr   ÚlistÚrangeÚlenr   r   Úassert_index_equalr6   r   r1   r+   ÚstrÚupperÚreset_indexÚ	set_indexÚdropr4   r    r!   Ú	TypeErrorr"   )r   Úmir$   r   Úsdfr   r   r   Útest_rename_axis_mapper.   s6   (ÿÿÿ"ÿz/TestDataFrameRenameAxis.test_rename_axis_mapperz$kwargs, rename_index, rename_columnsNr   )Úmapperr   TFr	   r1   r6   r;   c                 C   sŽ   t tdƒdd�}t ddgdd�}t d¡ dd	¡}t|||ƒ}|jd
i |¤Ž}|r.| d ¡n|}	|r7| d ¡n|}
t||	|
ƒ}t 	||¡ d S )NÚabcr   r3   Úcol1Úcol2r   é   é   r   r   )
r   r?   ÚnpÚarangeÚreshaper   r   Úrenamer   r   )r   ÚkwargsÚrename_indexÚrename_columnsr1   r6   Údatar$   r   Úexpected_indexÚexpected_columnsr   r   r   r   Útest_rename_axis_noneY   s   z-TestDataFrameRenameAxis.test_rename_axis_none)
Ú__name__Ú
__module__Ú__qualname__r   r%   rK   r    ÚmarkÚparametrizer\   r   r   r   r   r      s    +úþr   )ÚnumpyrR   r    Úpandasr   r   r   Úpandas._testingÚ_testingr   r   r   r   r   r   Ú<module>   s
    