a
    nÝEb­  ã                   @   sJ   d dl Z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)ÚCategoricalÚ
MultiIndexÚSeriesc                   @   s4   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ ZdS )ÚTestSeriesCountc                 C   s  t g d¢g d¢gg d¢g d¢gd�}ttj t|ƒ¡|d�}t t¡� |j	dd�}W d   ƒ n1 sh0    Y  |j
dd� 	¡ }t | d	¡| |j¡ d¡¡ t t¡� |j	d
d�}W d   ƒ n1 sÎ0    Y  |j
d
d� 	¡ }t | d	¡| |j¡ d¡¡ d S )N)ZfooÚbarZbaz)ÚoneÚtwoÚthreeÚfour)r   r   r   é   r   )r   r   é   r   r   )ZlevelsÚcodes©Úindexr   ©ÚlevelZf8r   )r   r   ÚnpÚrandomZrandnÚlenÚtmÚassert_produces_warningÚFutureWarningÚcountÚgroupbyÚassert_series_equalZastypeZreindexr   Zfillna)Úselfr   ÚserÚresultÚexpected© r   úf/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/tests/series/methods/test_count.pyÚtest_count_level_series   s"    þ*ÿ*ÿz'TestSeriesCount.test_count_level_seriesc              	   C   s‚  |}|  ¡ }ddg|j_t t¡� |jdd�}W d   ƒ n1 sD0    Y  t t¡�" |jdd� d¡}W d   ƒ n1 s€0    Y  t ||¡ t t¡� |jdd�}W d   ƒ n1 sÂ0    Y  t t¡�" |jdd� d¡}W d   ƒ n1 sþ0    Y  t ||¡ d}t	j
t|d��F t t¡� | d¡ W d   ƒ n1 �sT0    Y  W d   ƒ n1 �st0    Y  d S )	NÚaÚbr   r   r   zLevel x not found©ÚmatchÚx)Úcopyr   Únamesr   r   r   r   Zrename_axisr   ÚpytestÚraisesÚKeyError)r   Zseries_with_multilevel_indexr   Zseriesr   ÚexpectÚmsgr   r   r    Útest_count_multiindex$   s"    *0*0z%TestSeriesCount.test_count_multiindexc              	   C   sx   t tdƒƒ}d}tjt|d��F t t¡� |jdd� W d   ƒ n1 sL0    Y  W d   ƒ n1 sj0    Y  d S )Né   z2Series.count level is only valid with a MultiIndexr$   r   r   )	r   Úranger)   r*   Ú
ValueErrorr   r   r   r   )r   r   r-   r   r   r    Ú#test_count_level_without_multiindex;   s
    z3TestSeriesCount.test_count_level_without_multiindexc              	   C   sr  |  ¡ t|ƒksJ ‚tj|d d d…< |  ¡ t |¡ ¡ ks>J ‚t tdƒdddtj	ddgg¡}t
t t|ƒ¡|d�}t t¡� |j dd�}W d   ƒ n1 s 0    Y  t
g d¢ddtj	gd�}t ||¡ tj	|jg d¢< t t¡�( t |j dd�|d ¡ W d   ƒ n1 �s0    Y  t dd	¡�. t
t d
¡gƒ  ¡ dk�sNJ ‚W d   ƒ n1 �sd0    Y  d S )Nr   Zaabbccr   r   r   )r   r/   r   )r   r/   é   Zuse_inf_as_naTz1990/1/1)r   r   r   ÚNaNÚisfiniteÚsumr   Zfrom_arraysÚlistÚnanr   Zaranger   r   r   r   ZilocÚpdZoption_contextÚ	Timestamp)r   Zdatetime_seriesÚmiÚtsÚleftÚrightr   r   r    Ú
test_countC   s     *8zTestSeriesCount.test_countc                 C   s:   t ttjddtjgg d¢dd�ƒ}| ¡ }|dks6J ‚d S )Nr   r   )r3   é   r/   r   r   T)Ú
categoriesZordered)r   r   r   r8   r   )r   r   r   r   r   r    Útest_count_categoricalZ   s    ÿÿz&TestSeriesCount.test_count_categoricalN)Ú__name__Ú
__module__Ú__qualname__r!   r.   r2   r?   rB   r   r   r   r    r      s
   r   )Únumpyr   r)   Zpandasr9   r   r   r   Zpandas._testingZ_testingr   r   r   r   r   r    Ú<module>   s
   