a
    Pf                     @   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 s0J |d u s<J t|| |j ddd}| }|j dddd }}|d u s~J |d u sJ t|| d S )NfooT)inplacebar   axis)r   r   )rename_axiscopytmassert_frame_equal)selfZfloat_frameexpectedresultZreturn_valueZ	no_return r   d/var/www/ai-form-bot/venv/lib/python3.9/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 sH0    Y  tjtdd$ |jdd	d
dd W d    n1 s0    Y  tjtdd |jtdd W d    n1 s0    Y  tjtdd |d t W d    n1 s0    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    ,2,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sJ |jtjdd}|jjddgksJ |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sJJ |j	jdks\J tjtdd |jdd
 W d    n1 s0    Y  tjtdd |jdgd
 W d    n1 s0    Y  tjtdd |jd d  W d    n1 s0    Y  d S )!N)abcr	   r   Zllnn)namesc                 S   s   g | ]}|d  qS )r   r   ).0ir   r   r   
<listcomp>2       zCTestDataFrameRenameAxis.test_rename_axis_mapper.<locals>.<listcomp>)xy)indexcolsr
   r,   r-   namenew)columnsr   r   r   )r.   r   ZLLZNNZgoo)r3   Zmehr.   r3   z	Must passr   ZwrongzLength of namesbogus)r5   )r   Zfrom_productr   listrangelenr   r   Zassert_index_equalr3   r   r.   r'   strupperZreset_indexZ	set_indexZdropr1   r   r   	TypeErrorr   )r   mir!   r   Zsdfr   r   r   test_rename_axis_mapper.   s0    (,.z/TestDataFrameRenameAxis.test_rename_axis_mapperz$kwargs, rename_index, rename_columnsNr   )Zmapperr   TFr	   r.   r3   r4   c                 C   s   t tddd}t ddgdd}tddd	}t|||}|jf i |}|r\|d n|}	|rn|d n|}
t||	|
}t	|| d S )
Nabcr   r0   Zcol1Zcol2r         r   )
r   r6   npZarangeZreshaper   r   renamer   r   )r   kwargsZrename_indexZrename_columnsr.   r3   datar!   r   Zexpected_indexZexpected_columnsr   r   r   r   test_rename_axis_noneY   s    z-TestDataFrameRenameAxis.test_rename_axis_none)
__name__
__module____qualname__r   r"   r=   r   markZparametrizerE   r   r   r   r   r      s   +r   )numpyrA   r   Zpandasr   r   r   Zpandas._testingZ_testingr   r   r   r   r   r   <module>   s   