U
    rh                     @  sH   d dl mZ d dlZd dlZd dlmZ d dlmZ G dd deZ	dS )    )annotationsN)Base)expectc                   @  sT   e Zd ZeddddZeddddZeddddZeddd	d
ZdS )IsInfNone)returnc                  C  s^   t jjddgdgd} tjdtjtjdtj tjgtjd}t|}t	| |g|gdd	 d S )
Nr   xyinputsoutputs333333ffffff@ZdtypeZ
test_isinfr   r   name)
onnxhelper	make_nodenparraynaninffloat32isinfr   noder   r	    r   E/tmp/pip-unpacked-wheel-xnis5xre/onnx/backend/test/case/node/isinf.pyexport_infinity   s    &
zIsInf.export_infinityc                  C  s`   t jjddgdgdd} tjdtjtjdtj tjgtjd}t|}t	| |g|gd	d
 d S )Nr   r   r	   r   )r   r   Zdetect_negative333333g@r   Ztest_isinf_positiver   )
r   r   r   r   r   r   r   r   Zisposinfr   r   r   r   r   export_positive_infinity_only   s       &
z#IsInf.export_positive_infinity_onlyc                  C  s`   t jjddgdgdd} tjdtjtjdtj tjgtjd}t|}t	| |g|gd	d
 d S )Nr   r   r	   r   )r   r   Zdetect_positiver    gr   Ztest_isinf_negativer   )
r   r   r   r   r   r   r   r   Zisneginfr   r   r   r   r   export_negative_infinity_only$   s       &
z#IsInf.export_negative_infinity_onlyc                  C  s^   t jjddgdgd} tjdtjtjdtj tjgtjd}t|}t	| |g|gdd	 d S )
Nr   r   r	   r
   r   r   r   Ztest_isinf_float16r   )
r   r   r   r   r   r   r   Zfloat16r   r   r   r   r   r   export_infinity_float16.   s    &
zIsInf.export_infinity_float16N)__name__
__module____qualname__staticmethodr   r!   r"   r#   r   r   r   r   r      s   		r   )

__future__r   Znumpyr   r   Zonnx.backend.test.case.baser   Zonnx.backend.test.case.noder   r   r   r   r   r   <module>   s
   