U
    f/e
                     @   s  d dl Zd dlZd dlZd dlmZ d dlmZ ej	
ddddddgdfdddddgdfdddddgdfd	d
dddgdfdgddddgdfddgddddgdfddgddddgdfdd	d	d	dgdfdddddgdfdgdgdddgdfddgd	dgd	ddgdfdddddgdfdddgddddgdfgdd Zej	
dddddgdfddddgdfddddgdfddddgdfgdd ZdS )    N)Categoricalz)to_replace,value,expected,flip_categories         F         )r   r   r   )r   r   T435c                 C   s   t |t ptt|dk}tjdddgdd}|| |}tj|dd}|j| |dd |rz|j|jj	d d d }|stt
|}tj||d	d
 tj||d	d
 d S )Nr   r   r   category)ZdtypeTZinplaceF)Zcheck_category_order)
isinstancelistlenpduniqueZSeriesreplacecatZset_categories
categoriesnpZasarraytmZassert_series_equal)
to_replacevalueexpectedZflip_categoriesZstays_categoricalsresult r   P/tmp/pip-unpacked-wheel-tiezk1ph/pandas/tests/arrays/categorical/test_replace.pytest_replace	   s    r    z-to_replace, value, result, expected_error_msgbcaz$Categorical.categories are differentdz+Categorical.categories length are differentc              	   C   sz   t ddg}t |}|| |}t|| | dkrZtjt|d t|| W 5 Q R X |j| |dd t|| d S )Nr#   r!   )matchTr   )r   r   r   Zassert_categorical_equalpytestZraisesAssertionError)r   r   r   Zexpected_error_msgr   r   r   r   r   test_replace24   s    r(   )Znumpyr   r&   Zpandasr   r   Zpandas._testingZ_testingr   markZparametrizer    r(   r   r   r   r   <module>   s>   

