a
    oÝEb>  ã                   @   s^   d dl Z d dlm  mZ d dlmZmZ d dlm	Z
 e d¡e j d¡G dd„ dƒƒƒZdS )é    N)Ú	DataFrameÚSeriesÚnumbazignore:
c                   @   s4   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ ZdS )Ú
TestEnginec                 C   sŠ   |\}}t g d¢tdƒtddƒdœƒ}|||dœ}	|jd|d�}
t|
|ƒf d	|	d
œ|¤Ž}t|
|ƒf i |¤Ž}|dk}tj|||d� d S )N©é   é   r   r   é   é   é   ©ÚaÚbÚc©ÚnogilÚparallelÚnopythonr   ©Úsortr   ©ÚengineÚengine_kwargsÚsum©Úcheck_dtype)r   ÚrangeÚgroupbyÚgetattrÚtmZassert_frame_equal©Úselfr   r   r   r   Únumba_supported_reductionsÚfuncÚkwargsÚdfr   ÚgbÚresultÚexpectedr   © r)   ú_/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/tests/groupby/test_numba.pyÚtest_cython_vs_numba_frame   s    
ÿÿz%TestEngine.test_cython_vs_numba_framec                 C   sŽ   |\}}t g d¢tdƒtddƒdœƒ}|||dœ}	|jd|d�d	 }
t|
|ƒf d
|	dœ|¤Ž}t|
|ƒf i |¤Ž}|dk}tj|||d� d S )Nr   r	   r
   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   Úassert_series_equalr    r)   r)   r*   Útest_cython_vs_numba_getitem   s    
ÿÿz'TestEngine.test_cython_vs_numba_getitemc                 C   s‚   |\}}t tdƒg d¢dd�}|||dœ}	|jd|d�}
t|
|ƒf d|	d	œ|¤Ž}t|
|ƒf i |¤Ž}|d
k}tj|||d� d S )Nr   )r
   r   r
   Zfoo)ÚindexÚnamer   r   )Úlevelr   r   r   r   r   )r   r   r   r   r   r,   )r!   r   r   r   r   r"   r#   r$   Zserr   r&   r'   r(   r   r)   r)   r*   Útest_cython_vs_numba_series.   s    
ÿÿz&TestEngine.test_cython_vs_numba_seriesc                 C   s~   |\}}t g d¢tdƒtddƒdœƒ}|jddd�}tjtd	d
��( t||ƒf ddi|¤Ž W d   ƒ n1 sp0    Y  d S )Nr   r	   r
   r   r   r   F)Zas_indexzas_index=False©Úmatchr   r   ©r   r   r   ÚpytestZraisesÚNotImplementedErrorr   ©r!   r"   r#   r$   r%   r&   r)   r)   r*   Útest_as_index_false_unsupported=   s
    z*TestEngine.test_as_index_false_unsupportedc                 C   s~   |\}}t g d¢tdƒtddƒdœƒ}|jddd�}tjtdd	��( t||ƒf d
di|¤Ž W d   ƒ n1 sp0    Y  d S )Nr   r	   r
   r   r   r   )Zaxiszaxis=1r2   r   r   r4   r7   r)   r)   r*   Útest_axis_1_unsupportedD   s
    z"TestEngine.test_axis_1_unsupportedN)Ú__name__Ú
__module__Ú__qualname__r+   r-   r1   r8   r9   r)   r)   r)   r*   r      s
   r   )r5   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsÚtdZpandasr   r   Zpandas._testingZ_testingr   Z
skip_if_noÚmarkÚfilterwarningsr   r)   r)   r)   r*   Ú<module>   s   
