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                   @  sB   e Zd ZeddddZeddddZeddddZd	S )
ClipNone)returnc                  C  s  t jjddddgdgd} tddd	gtj}td
}td}t|||}t| |||g|gdd tj	
dddtj}t|||}t| |||g|gdd t jjddddgdgd} td}td}td
ddgtj}td
ddgtj}t| |||g|gdd tdddgtj}tdddgtj}t| |||g|gdd td
ddgtj}td
ddgtj}t| |||g|gdd d S )Nr   xminmaxyinputsoutputsr         Ztest_clip_exampler   r   name         Z	test_clipZtest_clip_inboundsi   Ztest_clip_outboundsZtest_clip_splitbounds)onnxhelper	make_nodenparrayastypefloat32clipr   randomrandn)noder   min_valmax_valr    r'   D/tmp/pip-unpacked-wheel-xnis5xre/onnx/backend/test/case/node/clip.pyexport   sb    

   

      zClip.exportc                  C  s.  t jjdddgdgd} td}tjddd	tj}t||tj	}t
| ||g|gd
d d}t jjdd|dgdgd} td}tjddd	tj}t|tj	 |}t
| ||g|gdd d}t jjdd||gdgd} tdddgtj}tdddgtj}t
| |g|gdd d S )Nr   r   r	   r   r   r   r   r   r   Ztest_clip_default_minr    r
   Ztest_clip_default_maxr   r   Ztest_clip_default_inbounds)r   r   r   r   r    r"   r#   r   r!   infr   r   r$   r%   r   r   Zno_minr&   Zno_maxr'   r'   r(   export_clip_default?   s8    

zClip.export_clip_defaultc                  C  s<  t jjdddgdgd} td}tjddd	tj}t||t	tjj
}t| ||g|gd
d d}t jjdd|dgdgd} td}tjddd	tj}t|t	tjj|}t| ||g|gdd d}t jjdd||gdgd} tdddgtj}tdddgtj}t| |g|gdd d S )Nr   r   r	   r   r   r   r   r   r   Ztest_clip_default_int8_minr   r*   r
   Ztest_clip_default_int8_maxr   r   Ztest_clip_default_int8_inbounds)r   r   r   r   Zint8r"   r#   r   r!   Ziinfor
   r   r	   r   r,   r'   r'   r(   export_clip_default_int8a   sL    
   
   zClip.export_clip_default_int8N)__name__
__module____qualname__staticmethodr)   r-   r.   r'   r'   r'   r(   r      s   0!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
   