o
    ‘iJ  ã                   @   st   d dl Zd dlZd dlmZmZ d dlmZmZ d dl	m
Z
 dd„ Zdd„ ZG d	d
„ d
e
ƒZedkr8e ¡  dS dS )é    N)Úcompile_isolatedÚFlags)ÚtypesÚerrors)ÚTestCasec                 C   s   || |||…< d S )N© )ÚaÚstartÚstopÚstepÚscalarr   r   új/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/numba/tests/test_storeslice.pyÚsetitem_slice	   s   r   c                 C   sD   |d }t  |¡| d|…< d| |< t  || d ¡| |d d …< d S )Né   r   iA  é   )ÚnpÚarange)ZobsZnPointsÚcenterr   r   r   Úusecase   s   "r   c                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚTestStoreSlicec                 C   sf   d}t  |¡}| ¡ }tƒ }d|_tttjd d … tj	f|d}| 
||¡ t||ƒ |  ||¡ d S )Né
   T)Úflags)r   ZzerosÚcopyr   Znrtr   r   r   Zfloat64ZintpÚentry_pointÚassertPreciseEqual)ÚselfÚnZobs_gotZobs_expectedr   Úcresr   r   r   Útest_usecase   s   
ÿ
zTestStoreSlice.test_usecasec              
   C   s4  d}t jd d … t jt jt jt jf}tt|ƒ}tj|tjd}dddt|ƒddfddt|ƒ ddfdd	d
dddf
}|D ]-\}}}}	tj|tjd}tj|tjd}
| |||||	¡ t|
||||	ƒ |  ||
¡ q;tj|tjd}|  	t
¡}| |dddd¡ W d   ƒ n1 sŠw   Y  |  t|jƒd¡ d S )Nr   )Zdtype)r   é   r   é   )r   r   éÿÿÿÿr    éþÿÿÿr   éM   )r"   éúÿÿÿé   éX   )r"   r$   éýÿÿÿi'  )r$   r"   é   r&   )r$   r"   éüÿÿÿr&   )é   é   r   r&   )r*   r+   r"   r&   r%   r   r   r&   zslice step cannot be zero)r   Zint64r   r   r   r   Úlenr   r   ÚassertRaisesÚ
ValueErrorÚassertEqualÚstrÚ	exception)r   r   Zargtysr   r   Útestsr	   r
   r   r   ÚbÚcmr   r   r   Útest_array_slice_setitem$   s8   ÿ
÷ÿz'TestStoreSlice.test_array_slice_setitemN)Ú__name__Ú
__module__Ú__qualname__r   r5   r   r   r   r   r      s    r   Ú__main__)Únumpyr   ZunittestZnumba.core.compilerr   r   Z
numba.corer   r   Znumba.tests.supportr   r   r   r   r6   Úmainr   r   r   r   Ú<module>   s    1ÿ