U
    ¸mœd¤  ã                   @   sn   d dl mZ d dlZd dlmZ edœdd„Zej deej	dej
ƒeej	ej
dƒeejdƒg¡d	d
„ ƒZdS )é    )ÚCallableN)Ú	array_api)Úfuncc                 O   sJ   d  dd„ |D ƒdd„ | ¡ D ƒ ¡}| j› d|› d�}tj| |||d�S )Nz, c                 S   s   g | ]}t |ƒ‘qS © )Ústr)Ú.0Úar   r   ú^/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/numpy/array_api/tests/test_validation.pyÚ
<listcomp>
   s     zp.<locals>.<listcomp>c                 S   s   g | ]\}}|› d |› �‘qS )ú=r   )r   ÚkÚvr   r   r	   r
   
   s     ú(ú))Úid)ÚjoinÚitemsÚ__name__ÚpytestÚparam)r   ÚargsÚkwargsZf_sigZid_r   r   r	   Úp   s
    ÿr   zfunc, args, kwargsé*   c              	   C   s$   t  t¡� | ||Ž W 5 Q R X dS )z<Function raises TypeError when passed invalidly-typed inputsN)r   ZraisesÚ	TypeError)r   r   r   r   r   r	   Útest_raises_on_invalid_types   s    
r   )Útypingr   r   Únumpyr   Zxpr   ÚmarkZparametrizeZcan_castZint8Zresult_typer   r   r   r   r	   Ú<module>   s   
ýþ