o
    _~#g                     @   sX   d dl Z d dlmZmZmZ d dlmZ e jj	Z
e d e jdG dd dZdS )    N)	DataFrameSeriesoption_contextnumbaignorec                   @   s<   e Zd Zd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|
|dd	|	d
|}t|
|di |}t|| d S )N      r	   r
            abcnogilparallelnopythonr   sortr   engineengine_kwargs )r   rangegroupbygetattrtmassert_frame_equalselfr   r   r   r   numba_supported_reductionsfunckwargsdfr   gbresultexpectedr   r   /var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/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|
|dd
|	d|}t|
|di |}t|| d S )Nr   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   sv   |\}}t tdg ddd}|||d}	|jd|d}
t|
|d
d|	d	|}t|
|d
i |}t|| d S )Nr	   )r   r
   r   foo)indexnamer   r   )levelr   r   r   r   )r   r   r   r   r   r,   )r"   r   r   r   r   r#   r$   r%   serr   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||dddi| W d    d S 1 s9w   Y  d S )Nr   r   r   r   r   r   F)as_indexzas_index=Falsematchr   r   r   r   r   r   pytestraisesNotImplementedErrorr   r"   r#   r$   r%   r&   r'   r   r   r*   test_as_index_false_unsupported9      "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||dd
di| W d    d S 1 s9w   Y  d S )Nr   r   r   r   r   r   )axiszaxis=1r5   r   r   r   r7   r;   r   r   r*   test_axis_1_unsupported@   r=   z"TestEngine.test_axis_1_unsupportedc                 C   s~   t g dtdtddd}|d}tdd |d	d
i}W d    n1 s+w   Y  |d	d
i}t|| d S )Nr   r   r   r   r   r   zcompute.use_numbaTr   first)r   r   r   r   aggr   r    )r"   r&   r'   resr)   r   r   r*   test_no_engine_doesnt_raiseG   s   
z&TestEngine.test_no_engine_doesnt_raiseN)	__name__
__module____qualname__r+   r-   r3   r<   r?   rC   r   r   r   r*   r      s    r   )r8   pandasr   r   r   pandas._testing_testingr   mark
single_cpu
pytestmarkimportorskipfilterwarningsr   r   r   r   r*   <module>   s    

