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 )
ReduceMeanNone)returnc                  C  s   dddg} t jdgt jd}d}tjjdddgd	g|d
}t jddgddggddgddggddgddgggt jd}t j|t||dkd}t	|||g|gdd t j
d t j
dd| t j}t j|t||dkd}t	|||g|gdd d S )N         Zdtyper   r   dataaxesreducedinputsoutputskeepdims         (   7   <   Zaxisr   Z(test_reduce_mean_do_not_keepdims_exampler   r   name
   Z'test_reduce_mean_do_not_keepdims_randomnparrayint64onnxhelper	make_nodefloat32meantupler   randomseeduniformastypeshaper   r   noder   r    r/   J/tmp/pip-unpacked-wheel-xnis5xre/onnx/backend/test/case/node/reducemean.pyexport_do_not_keepdims   s:    
,z!ReduceMean.export_do_not_keepdimsc                  C  s   dddg} t jdgt jd}d}tjjdddgdg|d	}t jd
dgddggddgddggddgddgggt jd}t j|t||dkd}t	|||g|gdd t j
d t j
dd| t j}t j|t||dkd}t	|||g|gdd d S )Nr   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   Z!test_reduce_mean_keepdims_exampler   r   r   r   Z test_reduce_mean_keepdims_randomr   r,   r/   r/   r0   export_keepdims7   s:    
,zReduceMean.export_keepdimsc                  C  s   dddg} t jg t jd}d}tjjdddgdg|d	}t jd
dgddggddgddggddgddgggt jd}t j|d |dkd}t|||g|gdd t j	
d t j	dd| t j}t j|d |dkd}t|||g|gdd d S )Nr   r	   r   r
   r   r   r   r   r   r   r   r   r   r   r   r   Z.test_reduce_mean_default_axes_keepdims_exampler   r   r   r   Z-test_reduce_mean_default_axes_keepdims_random)r   r    r!   r"   r#   r$   r%   r&   r   r(   r)   r*   r+   r,   r/   r/   r0   export_default_axes_keepdims`   s:    
,z'ReduceMean.export_default_axes_keepdimsc                  C  s   dddg} t jdgt jd}d}tjjdddgd	g|d
}t jddgddggddgddggddgddgggt jd}t j|t||dkd}t	|||g|gdd t j
d t j
dd| t j}t j|t||dkd}t	|||g|gdd d S )Nr   r	   r   r
   r   r   r   r   r   r   r   r   r   r   r   r   Z/test_reduce_mean_negative_axes_keepdims_exampler   r   r   r   Z.test_reduce_mean_negative_axes_keepdims_randomr   r,   r/   r/   r0   export_negative_axes_keepdims   s:    
,z(ReduceMean.export_negative_axes_keepdimsN)__name__
__module____qualname__staticmethodr1   r2   r3   r5   r/   r/   r/   r0   r      s   ((&r   )

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