U
    c
                  	   @   s   d dl Zd dlZd dlZd dlmZ ej	dddgej	ddddgdddd	ggd
d Z
dd Zdd Zdd Zej	dg ejedeg gdd Zdd ZdS )    NorderedTF
categoriesbacdc                 C   st   t jddddd g| |d}t |\}}tjdddddgtjd	}t jdddg| |d}t|| t|| d S )
Nr   r   r   r   r   r         Zdtype	pdCategoricalZ	factorizenparrayZintptmassert_numpy_array_equalZassert_categorical_equal)r   r   catcodesuniquesexpected_codesexpected_uniques r   N/tmp/pip-unpacked-wheel-g7fro6k3/pandas/tests/arrays/categorical/test_algos.pytest_factorize   s        r   c                  C   sf   t ddd dg} t j| dd\}}tjddddgtjd}t ddg}t|| t|| d S )	Nr   r   Tsortr	   r   r   r   r   r   r   r   r   r   r   r   r   test_factorized_sort   s    r   c                  C   s~   t jddd dgdddgdd} t j| dd\}}tjdddd	gtjd
}t jddgdddgdd}t|| t|| d S )Nr   r   r   Tr   r   r   r   r	   r   r   r   r   r   r   test_factorized_sort_ordered"   s    
    r    c                  C   st   t ddtjg} | dtjg}tjdddgtd}t|| | ddg}tjdddgtd}t|| d S )Nr   r   TFr   r   )	r   r   r   nanisinr   boolr   r   )r   resultexpectedr   r   r   test_isin_cats1   s    r&   emptyr   c                 C   s:   t ddg}tjddgtd}|| }t|| d S )Nr   r   Fr   )r   r   r   r   r#   r"   r   r   )r'   sr%   r$   r   r   r   test_isin_empty>   s    
r)   c               	   C   s   t jdddgdd} tt |  }W 5 Q R X t tjddg}t|| |j	dd}| j	dd}tt | }W 5 Q R X t
|| d S )Nr	   r
      categoryr   A)name)r   Seriesr   Zassert_produces_warningFutureWarningZdiffr   r!   Zassert_series_equalZto_frameZassert_frame_equal)r(   r$   r%   Zdfr   r   r   	test_diffG   s    r0   )Znumpyr   ZpytestZpandasr   Zpandas._testingZ_testingr   markZparametrizer   r   r    r&   r.   objectr   r)   r0   r   r   r   r   <module>   s   
 
