U
    qh                     @  sb   d dl mZ d dlZd dlZd dlZd dlZd dlmZmZ G dd dej	Z
edkr^e  dS )    )annotationsN)TensorProtohelperc                   @  s  e Zd Zedd Zdd ZddddZddd	d
ZddddZddddZ	ddddZ
ddddZddddZddddZddddZddddZddddZddddZdddd Zddd!d"Zddd#d$Zddd%d&Zddd'd(Zddd)d*Zddd+d,Zddd-d.Zddd/d0Zddd1d2Zddd3d4Zddd5d6Zddd7d8Zddd9d:Zddd;d<Z ddd=d>Z!ddd?d@Z"dddAdBZ#dddCdDZ$dddEdFZ%dddGdHZ&dddIdJZ'dddKdLZ(dddMdNZ)dddOdPZ*dddQdRZ+dddSdTZ,dddUdVZ-dddWdXZ.dddYdZZ/ddd[d\Z0ddd]d^Z1ddd_d`Z2dddadbZ3dddcddZ4dddedfZ5dddgdhZ6dddidjZ7dddkdlZ8dddmdnZ9dddodpZ:dddqdrZ;dddsdtZ<dddudvZ=dddwdxZ>dddydzZ?ddd{d|Z@ddd}d~ZAddddZBddddZCddddZDddddZEddddZFddddZGddddZHddddZIddddZJddddZKddddZLddddZMddddZNddddZOddddZPddddZQddddZRddddZSddddZTddddZUddddZVddddZWddddZXddddZYddddZZddddZ[ddddZ\ddddZ]ddddZ^ddddZ_ddddZ`ddddZaddddZbddddZcddddĄZdddddƄZeddddȄZfddddʄZgdddd̄Zhdddd΄ZiddddЄZjdddd҄ZkddddԄZlddddքZmdddd؄ZnddddڄZodddd܄ZpddddބZqddddZrddddZsddddZtddddZuddddZvddddZwddddZxddddZyddddZzddddZ{ddddZ|ddddZ}ddddZ~ddddZddddZddddZdddd ZddddZddddZddddZddddZddd	d
ZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZdddd Zddd!d"Zddd#d$Zddd%d&Zddd'd(Zddd)d*Zddd+d,Zddd-d.Zddd/d0Zddd1d2Zddd3d4Zddd5d6Zddd7d8Zddd9d:Zddd;d<Zddd=d>Zddd?d@ZdddAdBZdddCdDZdddEdFZdddGdHZdddIdJZdddKdLZdddMdNZdddOdPZdddQdRZdddSdTZdddUdVZdddWdXZdddYdZZddd[d\Zddd]d^Zddd_d`ZdddadbZdddcddZdddedfZdddgdhZdddidjZdddkdlZdddmdnZdddodpZdddqdrZdddsdtZdddudvZdddwdxZdddydzZddd{d|Zddd}d~ZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZѐdddddZddddZddddZddddZddddZ֐dddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddZddddÄZdS (  TestAutomaticUpgradec                 C  s
   g | _ d S )N)
tested_ops)cls r   V/tmp/pip-unpacked-wheel-xnis5xre/onnx/test/version_converter/automatic_upgrade_test.py
setUpClass   s    zTestAutomaticUpgrade.setUpClassc                 O  s*   | j | | j|f||ddi d S )NZ
is_upgradeT)r   appendZ_test_op_conversion)selfopargskwargsr   r   r	   _test_op_upgrade   s    z%TestAutomaticUpgrade._test_op_upgradeNone)returnc                 C  s   | j ddddgid d S )NZAbs   consumed_inputsr   attrsr   r   r   r   r	   test_Abs   s    zTestAutomaticUpgrade.test_Absc                 C  s   |  dd d S )NZAcosh	   r   r   r   r   r	   
test_Acosh    s    zTestAutomaticUpgrade.test_Acoshc                 C  s   |  dd d S )NZAcos   r   r   r   r   r	   	test_Acos#   s    zTestAutomaticUpgrade.test_Acosc                 C  s6   |  ddddgddggddggtjtjgtjg d S )NAndr         r   r   BOOLr   r   r   r	   test_And&   s    
zTestAutomaticUpgrade.test_Andc                 C  s   |  dd d S )NZAsinhr   r   r   r   r   r	   
test_Asinh1   s    zTestAutomaticUpgrade.test_Asinhc                 C  s   |  dd d S )NZAtanhr   r   r   r   r   r	   
test_Atanh4   s    zTestAutomaticUpgrade.test_Atanhc                 C  s,   | j dddddgdddggddgid d S )	NAddr   r          r   r   r   r   r   r   r   r	   
test_Add_17   s       zTestAutomaticUpgrade.test_Add_1c                 C  s*   | j dddddgdggdgddd d S )	Nr&   r   r    r'   r(   r   )r   	broadcastr   r   r   r   r   r	   
test_Add_2<   s       
zTestAutomaticUpgrade.test_Add_2c                 C  s,   | j dddddgdggdgdddd d S )	Nr&   r   r    r'   r(   r   )r   r*   axisr   r   r   r   r   r	   
test_Add_3A   s    zTestAutomaticUpgrade.test_Add_3c              	   C  s6   d\}}}}|  dd|ddgdgg|||dgg d S )N)r   r    r(      
AffineGrid   r   r    r'   r   )r   N_HWr   r   r	   test_AffineGrid_2DI   s    z'TestAutomaticUpgrade.test_AffineGrid_2Dc              
   C  s:   d\}}}}}|  dd|ddgdgg||||dgg d S )N)r   r    r'   r(   r.   r/   r0   r    r'   r(   r   )r   r1   r2   Dr3   r4   r   r   r	   test_AffineGrid_3DM   s    z'TestAutomaticUpgrade.test_AffineGrid_3Dc                 C  s,   | j dddddggdddggtjgd d S )NArgMaxr   r   r    r'   r   output_typesr   r   INT64r   r   r   r	   test_ArgMax_1Q   s      
 
 z"TestAutomaticUpgrade.test_ArgMax_1c                 C  s2   | j dddddggdddggtjgddid d S )	Nr8   r   r   r    r'   r   r,   r:   r   r;   r   r   r   r	   test_ArgMax_2V   s    

z"TestAutomaticUpgrade.test_ArgMax_2c                 C  s,   | j dddddggdddggtjgd d S )NArgMinr   r   r    r'   r   r9   r;   r   r   r   r	   test_ArgMin_1`   s      
 
 z"TestAutomaticUpgrade.test_ArgMin_1c                 C  s2   | j dddddggdddggtjgddid d S )	Nr@   r   r   r    r'   r   r,   r>   r;   r   r   r   r	   test_ArgMin_2e   s    

z"TestAutomaticUpgrade.test_ArgMin_2c                 C  s   |  dd d S )NZAsinr   r   r   r   r   r	   	test_Asino   s    zTestAutomaticUpgrade.test_Asinc                 C  s   |  dd d S )NZAtanr   r   r   r   r   r	   	test_Atanr   s    zTestAutomaticUpgrade.test_Atanc                 C  s4   | j ddddddggddddggdddgid d S )NZAveragePoolr   r(   r'   kernel_shaper   r   r   r   r   r   r	   test_AveragePoolu   s    
z%TestAutomaticUpgrade.test_AveragePoolc                 C  s   |  dd d S )NZ	Bernoulli   r   r   r   r   r	   test_Bernoulli~   s    z#TestAutomaticUpgrade.test_Bernoullic              	   C  s>   | j ddddgddggddggtjtjgtjgddid d S )NZBitShift   r   r    	directionRIGHTr   r   r   UINT8r   r   r   r	   test_BitShift   s    
z"TestAutomaticUpgrade.test_BitShiftc              	   C  s@   | j ddddgdgdgdgdggddggddgdddd d S )NBatchNormalizationr   r    )r   is_testZspatialr   r   r   r   r   r	   test_BatchNormalization_1   s    z.TestAutomaticUpgrade.test_BatchNormalization_1c                 C  s@   | j ddddgdgdgdgdggddgdgdggddid d S )NrO      r   r    Ztraining_moder   r   r   r   r   r	   test_BatchNormalization_2   s    z.TestAutomaticUpgrade.test_BatchNormalization_2c                 C  s.   | j ddddggddggtjgddid d S )NZCastr.   r   r    tor   r   r;   r   r   r   r	   	test_Cast   s         zTestAutomaticUpgrade.test_Castc                 C  s   | j ddddgid d S )NZCeilr   r   r   r   r   r   r   r   r	   	test_Ceil   s    zTestAutomaticUpgrade.test_Ceilc                 C  s   |  dd d S )NZCelu   r   r   r   r   r	   	test_Celu   s    zTestAutomaticUpgrade.test_Celuc                 C  s   | j ddddgid d S )NClipr   r   r   r   r   r   r   r   r	   test_Clip_1   s    z TestAutomaticUpgrade.test_Clip_1c                 C  s   | j dddgddd d S )NrY   r   r   ffffff)r   minr   r   r   r   r   r	   test_Clip_2   s    z TestAutomaticUpgrade.test_Clip_2c                 C  s   | j dddgddd d S )NrY   r   r   @)r   maxr   r   r   r   r   r	   test_Clip_3   s    z TestAutomaticUpgrade.test_Clip_3c                 C  s   | j dddgdddd d S )NrY   r   r   r[   r^   )r   r\   r_   r   r   r   r   r   r	   test_Clip_4   s
      z TestAutomaticUpgrade.test_Clip_4c              	   C  s.   |  dddddgdgdggddddgg d S )NCol2Im   r   r(   r   r   r   r   r   r	   test_Col2Im_4D   s    z#TestAutomaticUpgrade.test_Col2Im_4Dc              
   C  s0   |  dddddgdgdggddddd	gg d S )
Nrb   rc   r   
   rW   r    r   r'   r(   r   r   r   r   r	   test_Col2Im_5D   s    z#TestAutomaticUpgrade.test_Col2Im_5Dc                 C  s2   |  ddddgdggdggtjtjgtjg d S )NZCompressr   r.   r   r    )r   r   FLOATr"   r   r   r   r	   test_Compress   s    
z"TestAutomaticUpgrade.test_Compressc                 C  s&   |  ddddgddggddgg d S )NZConcatr   r   r    r'   r   r   r   r   r   r	   test_Concat   s    z TestAutomaticUpgrade.test_Concatc              	   C  sN   t jdtjdddgtjdddtj	 dd}| j
ddg d	|id
 d S )NValuer    r'   r(   TdimsvalsrawConstantr   valuer   r   make_tensorr   rg   nprandomrandastypefloat32tobytesr   )r   rp   r   r   r	   test_constant   s    z"TestAutomaticUpgrade.test_constantc                 C  s   |  dddgg d S )NZConstantOfShaper   r    r   r   r   r   r	   test_ConstantOfShape   s    z)TestAutomaticUpgrade.test_ConstantOfShapec              	   C  s6   |  ddddddgddddgdggddddgg d S NConvr   r    r(   r'   r   r   r   r   r   r	   test_Conv_1   s       z TestAutomaticUpgrade.test_Conv_1c              	   C  s6   |  ddddddgddddgdggddddgg d S r{   r   r   r   r   r	   test_Conv_2   s       z TestAutomaticUpgrade.test_Conv_2c                 C  sT   | j ddddddgddddgdggddddggddgdddddgddgd	d
 d S )Nr|   r   r    r(   r'   r   r   r   )Z	dilationsgrouppadsstridesr   r   r   r   r   r	   test_Conv_3   s    
z TestAutomaticUpgrade.test_Conv_3c              	   C  sJ   |  ddddddgddddgdggddddggtjtjtjgtjg d S )NZConvIntegerre   r   r    r(   r'   r   )r   r   rM   INT32r   r   r   r	   test_Convinteger   s    z%TestAutomaticUpgrade.test_Convintegerc              	   C  s2   |  ddddddgddddggddddgg d S )NZConvTransposer   r(   r    r   r   r   r   r   r	   test_ConvTranspose   s       z'TestAutomaticUpgrade.test_ConvTransposec              
   C  s<   |  ddddddgddddgddddggddddgg d S )NZ
DeformConv   r   r    r      r   r   r   r   r	   test_DeformConv   s     z$TestAutomaticUpgrade.test_DeformConvc                 C  s   |  dd d S )NZCoshr   r   r   r   r   r	   	test_Cosh  s    zTestAutomaticUpgrade.test_Coshc                 C  s   |  dd d S )NZCosr   r   r   r   r   r	   test_Cos
  s    zTestAutomaticUpgrade.test_Cosc                 C  s0   |  dddddgg gdddggtjtjg d S )NZCumSumrI   r    r'   r(   r   r   rg   r<   r   r   r   r	   test_Cumsum  s    

z TestAutomaticUpgrade.test_Cumsumc                 C  s0   | j ddddddggddddggddid d S )	NZDepthToSpacer   r   r    r   r.   	blocksizer   r   r   r   r   r	   test_DepthToSpace  s        z&TestAutomaticUpgrade.test_DepthToSpacec              	   C  s2   |  ddddgg g gddggtjtjtjg d S )NZDequantizeLinearre   r   r    )r   r   INT8rg   r   r   r   r	   test_DequantizeLinear  s    z*TestAutomaticUpgrade.test_DequantizeLinearc                 C  s    |  dddddggdgg d S )NDetrI   r    r(   r   r   r   r   r	   
test_Det_1$  s    zTestAutomaticUpgrade.test_Det_1c                 C  s   |  ddddggg g d S )Nr   rI   r(   r   r   r   r   r	   
test_Det_2'  s    zTestAutomaticUpgrade.test_Det_2c                 C  s8   | j dddddggdddgg g gtjtjtjgd d S )NZDynamicQuantizeLinearrI   r    r'   r(   r9   )r   r   rM   rg   r   r   r   r	   test_DynamicQuantizeLinear*  s    
z/TestAutomaticUpgrade.test_DynamicQuantizeLinearc                 C  s,   | j dddddgdddggddgid d S )	NZDivr   r    r'   r(   r   r   r   r   r   r   r   r	   test_Div3  s       zTestAutomaticUpgrade.test_Divc                 C  s   | j dddgddd d S )NZDropoutr   r   )r   rP   r   r   r   r   r   r	   test_Dropout8  s
      
z!TestAutomaticUpgrade.test_Dropoutc                 C  s4   | j dddddgdddggdddggddid	 d S )
NEinsumrW   r    r'   r(   r.   equationzbij, bjk -> bikr   r   r   r   r   r	   test_Einsum_1=  s    
z"TestAutomaticUpgrade.test_Einsum_1c                 C  s(   | j ddddggddggddid d S )Nr   rW   r'   r(   r   zij->jir   r   r   r   r   r	   test_Einsum_2F  s        z"TestAutomaticUpgrade.test_Einsum_2c                 C  s   | j ddddgid d S )NZElur   r   r   r   r   r   r   r   r	   test_EluK  s    zTestAutomaticUpgrade.test_Eluc                 C  s.   | j ddddgddggddggtjgd d S )NZEqualr   r   r    r9   r!   r   r   r   r	   
test_EqualN  s        zTestAutomaticUpgrade.test_Equalc                 C  s   |  dd d S )NZErfr   r   r   r   r   r	   test_ErfT  s    zTestAutomaticUpgrade.test_Erfc                 C  s   | j ddddgid d S )NZExpr   r   r   r   r   r   r   r   r	   test_ExpW  s    zTestAutomaticUpgrade.test_Expc              
   C  s^   t jdtjdgtddddgd}| jdddd	dgdggddddggtjtjg|gd
 d S )Nbr'   r(   r   r.   rl   rm   ZExpandr   r   initializerr   rr   r   r<   rs   arrayr   rg   )r   shaper   r   r	   test_ExpandZ  s       
z TestAutomaticUpgrade.test_Expandc                 C  s    |  ddddggddgg d S )NZEyeLiker   r'   r(   r   r   r   r   r	   test_EyeLikeg  s    z!TestAutomaticUpgrade.test_EyeLikec                 C  s*   | j dddddggddggddid d S )	NZFlattenr   r    r'   r(   r0   r,   r   r   r   r   r   r	   test_Flattenj  s    z!TestAutomaticUpgrade.test_Flattenc                 C  s   | j ddddgid d S )NZFloorr   r   r   r   r   r   r   r   r	   
test_Floorm  s    zTestAutomaticUpgrade.test_Floorc              	   C  s6   |  dddddgddggddddggtjtjg d S )NZGatherr   r    r'   r(   r.   r   r   r   r   r   r	   test_Gatherp  s    
z TestAutomaticUpgrade.test_Gatherc                 C  s2   |  dddddgddggddggtjtjg d S )NZGatherElementsrI   r    r'   r(   r.   r   r   r   r   r   r	   test_GatherElementsy  s    
z(TestAutomaticUpgrade.test_GatherElementsc                 C  s*   |  dddddgdddggddgg d S )NZGatherNDrI   r   r   r    r   r   r   r   r	   test_GatherND  s    z"TestAutomaticUpgrade.test_GatherNDc                 C  s   | j ddddid d S )NGelur0   Zapproximatetanhr   r   r   r   r   r	   test_Gelu_approximate_tanh  s    z/TestAutomaticUpgrade.test_Gelu_approximate_tanhc                 C  s   |  dd d S )Nr   r0   r   r   r   r   r	   	test_Gelu  s    zTestAutomaticUpgrade.test_Geluc                 C  s*   |  ddddgddgdggddgg d S )NZGemmr   r(   r'   r    r   r   r   r   r	   	test_Gemm  s    zTestAutomaticUpgrade.test_Gemmc              	   C  s(   |  ddddddggddddgg d S )NZGlobalAveragePoolr   r    re   r   r   r   r   r	   test_GlobalAveragePool  s    z+TestAutomaticUpgrade.test_GlobalAveragePoolc              	   C  s(   |  ddddddggddddgg d S )NZGlobalMaxPoolr   r    re   r   r   r   r   r	   test_GlobalMaxPool  s    z'TestAutomaticUpgrade.test_GlobalMaxPoolc              	   C  s(   |  ddddddggddddgg d S )NZGlobalLpPoolr   r   r    re   r   r   r   r   r	   test_GlobalLpPool  s    z&TestAutomaticUpgrade.test_GlobalLpPoolc                 C  s.   | j ddddgddggddggtjgd d S )NZGreaterr   r   r    r9   r!   r   r   r   r	   test_Greater  s        z!TestAutomaticUpgrade.test_Greaterc                 C  s.   | j ddddgddggddggtjgd d S )NZGreaterOrEqualrW   r   r    r9   r!   r   r   r   r	   test_GreaterOrEqual  s    z(TestAutomaticUpgrade.test_GreaterOrEqualc                 C  sN   | j ddddddgddddggddddggtjtjgtjgddddd	 d S )
NZ
GridSample   r   r    r   ZnearestZborder)modeZpadding_modeZalign_cornersinput_typesr:   r   r   r   rg   r   r   r   r	   test_GridSample  s    

z$TestAutomaticUpgrade.test_GridSamplec                 C  sF   | j dddddgdddgdddggddddgdddggd	did
 d S )NGRUr   r(   r    r'   r   rc   r.   hidden_sizer   r   r   r   r   r	   
test_GRU_1  s    zTestAutomaticUpgrade.test_GRU_1c                 C  sH   | j dddddgdddgdddggddddgdddggdd	d
d d S )Nr   r   r(   r    r'   r   rc   r.   bidirectionalr   rJ   r   r   r   r   r   r	   
test_GRU_2  s    zTestAutomaticUpgrade.test_GRU_2c                 C  sr   | j dddddgdddgdddgddgdgddd	ggdddd	gddd	ggtjtjtjtjtjtjgd
d	id d S )Nr   r   r(   r    r'   r   rc      r.   r   r   r   r   r   r   r	   
test_GRU_3  s    ,zTestAutomaticUpgrade.test_GRU_3c                 C  s   | j ddddgid d S )NZHardSigmoidr   r   r   r   r   r   r   r   r	   test_HardSigmoid  s    z%TestAutomaticUpgrade.test_HardSigmoidc                 C  s   |  dd d S )NZ	HardSwishrR   r   r   r   r   r	   test_HardSwish  s    z#TestAutomaticUpgrade.test_HardSwishc                 C  s   |  dd d S )NZHardmaxr   r   r   r   r   r	   test_Hardmax  s    z!TestAutomaticUpgrade.test_Hardmaxc                 C  s   |  dd d S )NIdentityr   r   r   r   r   r	   test_Identity  s    z"TestAutomaticUpgrade.test_Identityc              	   C  s   t dtjdddgg}t jdtjdddgtjdddtj	
 dd}t jdg dg|d	}t |gd
g |g }t jdtjdddgtjdddtj	
 dd}t jdg dg|d	}t |gdg |g }| jdddggdddggtjg||dd d S )Noutr    r'   r(   rj   Trk   ro   )rp   
then_graph
else_graphZIfr   r   )Zthen_branchZelse_branchr   )r   make_tensor_value_infor   rg   rr   rs   rt   ru   rv   rw   rx   	make_node
make_graphr   r"   )r   Z
sub_outputZthen_tensorZ	then_noder   Zelse_tensorZ	else_noder   r   r   r	   test_If  s8    
zTestAutomaticUpgrade.test_Ifc                 C  s.   | j ddd ggd d dggtjgtjgd d S )NZImageDecoderr0   r    r   r:   rL   r   r   r   r	   test_ImageDecoder  s    
z&TestAutomaticUpgrade.test_ImageDecoderc                 C  s2   | j ddddgdgdggddggddgid d S )NZInstanceNormalizationr   r    r   r   r   r   r   r   r   r	   test_InstanceNormalization  s    z/TestAutomaticUpgrade.test_InstanceNormalizationc                 C  s(   | j ddddggddggtjgd d S )NZIsInfre   r   r    r9   r!   r   r   r   r	   
test_IsInf  s        zTestAutomaticUpgrade.test_IsInfc                 C  s(   | j ddddggddggtjgd d S )NZIsNaNr   r   r    r9   r!   r   r   r   r	   
test_IsNaN  s        zTestAutomaticUpgrade.test_IsNaNc                 C  s   | j ddddgid d S )NZ	LeakyRelur   r   r   r   r   r   r   r   r	   test_LeakyRelu   s    z#TestAutomaticUpgrade.test_LeakyReluc                 C  s.   | j ddddgddggddggtjgd d S )NZLessr   r   r    r9   r!   r   r   r   r	   	test_Less#  s        zTestAutomaticUpgrade.test_Lessc                 C  s.   | j ddddgddggddggtjgd d S )NZLessOrEqualrW   r   r    r9   r!   r   r   r   r	   test_LessOrEqual)  s    z%TestAutomaticUpgrade.test_LessOrEqualc                 C  s   | j ddddgid d S )NLogr   r   r   r   r   r   r   r   r	   test_Log2  s    zTestAutomaticUpgrade.test_Logc                 C  s   |  dd d S )NZ
LogSoftmaxr   r   r   r   r   r	   test_LogSoftmax5  s    z$TestAutomaticUpgrade.test_LogSoftmaxc                 C  sf  t jdt jjg }t jdt jjg }t jdt jjdg}t jdt jjg }t jdt jjdg}t jdt jjdg}t jjdg d	gt jjd
t jjdgt	
dgt	jtdd}t jjddd	gdgd}t jjddgdgd}	t jjddgdgd}
t j|||	|
gd|||g|||g}| jddg ddggdgddggtjtjtjgd|id d S )N
iter_countcond_inx_inr   cond_outx_outx_scanro   Zonerp   )nameZ	data_typerl   rm   )inputsoutputsrp   r&   r   r   r   	loop_bodyLoop r(   bodyr   )onnxr   r   r   r<   r"   rg   r   rr   rs   r   rv   rw   floatr   r   )r   r   r   r   r   r   r   constaddZid_1Zid_2r   r   r   r	   test_Loop_18  sl              

z TestAutomaticUpgrade.test_Loop_1c           
      C  s  t jdt jjg }t jdt jjg }t jdt jjddg}t jdt jjg }t jdt jjddg}t jjddgd	gdgd
}t jjdd	gdgdgd
}t jjddgdgd}t j|||gd|||g||g}	| j	ddg dddggddggtjtjtjgd|	id d S )Nr   r   r   r   r   r   r   SqueezeZsqueeze_out)r   r   axes	Unsqueezer   r   r   r   rW   r   r   r   )
r   r   r   r   r<   r"   rg   r   r   r   )
r   r   r   r   r   r   ZsqueezeZ	unsqueezeidentityr   r   r   r	   test_Loop_2f  sp                      z TestAutomaticUpgrade.test_Loop_2c                 C  s   |  dd d S )NZLpNormalizationr   r   r   r   r   r	   test_LpNormalization  s    z)TestAutomaticUpgrade.test_LpNormalizationc                 C  s4   | j ddddddggddddggdddgid d S )NZLpPoolr   r   r(   r'   rE   r   r   r   r   r   r	   test_LpPool  s        
z TestAutomaticUpgrade.test_LpPoolc                 C  s   | j ddddid d S )NLRNr   sizer    r   r   r   r   r   r	   
test_LRN_1  s    zTestAutomaticUpgrade.test_LRN_1c                 C  s0   | j ddddddggddddggddid d S )	Nr   r   r   r    r'   r(   r   r   r   r   r   r   r	   
test_LRN_2  s        zTestAutomaticUpgrade.test_LRN_2c              	   C  sN   | j dddddgdddgdddggddddgdddgdddggd	did
 d S )NLSTMr   r(   r    r'   r   r   r.   r   r   r   r   r   r   r	   test_LSTM_1  s    z TestAutomaticUpgrade.test_LSTM_1c              	   C  sP   | j dddddgdddgdddggddddgdddgdddggdd	d
d d S )Nr   r   r(   r    r'   r   r   r.   r   r   r   r   r   r   r   r	   test_LSTM_2  s    z TestAutomaticUpgrade.test_LSTM_2c                 C  s   | j dddddgdddgdddgddgdgddd	gddd	gdd
ggdddd	gddd	gddd	ggtjtjtjtjtjtjtjtjgdd	id d S )Nr   r   r(   r    r'   r   r   0   r.   rc   r   r   r   r   r   r   r	   test_LSTM_3  s0    

z TestAutomaticUpgrade.test_LSTM_3c                 C  s&   |  ddddgddggddgg d S )NMatMulr   r   r    r'   r   r   r   r   r	   test_MatMul_1  s    z"TestAutomaticUpgrade.test_MatMul_1c                 C  s,   |  dddddgdddggdddgg d S )Nr   r   r(   r   r    r'   r   r   r   r   r	   test_MatMul_2  s    z"TestAutomaticUpgrade.test_MatMul_2c                 C  s6   |  ddddgddggddggtjtjgtjg d S NZMatMulIntegerre   r   r    r'   r   r   r   r   r   r   r   r	   test_MatMulInteger_1  s    
z)TestAutomaticUpgrade.test_MatMulInteger_1c              
   C  sB   |  ddddgddgg g gddggtjtjtjtjgtjg d S r  r  r   r   r   r	   test_MatMulInteger_2  s    z)TestAutomaticUpgrade.test_MatMulInteger_2c              
   C  sF   |  ddddgddgdgdggddggtjtjtjtjgtjg d S r  r  r   r   r   r	   test_MatMulInteger_3  s    z)TestAutomaticUpgrade.test_MatMulInteger_3c                 C  s6   | j dddddgdddggdddggddgid d S )	NZMaxr   r   r    r'   r   r   r   r   r   r   r   r	   test_Max  s    
zTestAutomaticUpgrade.test_Maxc                 C  s4   | j ddddddggddddggdddgid d S )NMaxPoolr   r(   r'   rE   r   r   r   r   r   r   r	   test_MaxPool_1  s        
z#TestAutomaticUpgrade.test_MaxPool_1c              	   C  sH   | j ddddddggddddgddddggtjtjgdddgid d S )	Nr  r   r   r(   r'   rE   r   r>   r   r   r   r   r	   test_MaxPool_2  s    

z#TestAutomaticUpgrade.test_MaxPool_2c                 C  s:   | j ddddddgddggddddggdddgid	 d S )
NZ
MaxRoiPoolr   r   r    r0   r'   r(   Zpooled_shaper   r   r   r   r   r	   test_MaxRoiPool  s    
z$TestAutomaticUpgrade.test_MaxRoiPoolc              	   C  sH   | j ddddddgddddggddddggtjtjgdddgid d S )	NZ	MaxUnpoolr   r   r(   r.   rE   r   r   r   r   r   r   r	   test_MaxUnpool  s    

z#TestAutomaticUpgrade.test_MaxUnpoolc                 C  s6   | j dddddgdddggdddggddgid d S )	NZMeanr   r   r    r'   r   r   r   r   r   r   r   r	   	test_Mean  s    
zTestAutomaticUpgrade.test_Meanc                 C  s   | j dddddgid d S )NZMeanVarianceNormalizationr   r   r   r   r   r   r   r   r   r	   test_MeanVarianceNormalization(  s    z3TestAutomaticUpgrade.test_MeanVarianceNormalizationc                 C  s6   | j dddddgdddggdddggddgid d S )	NZMinr   r   r    r'   r   r   r   r   r   r   r   r	   test_Min+  s    
zTestAutomaticUpgrade.test_Minc                 C  s   |  dd d S )NZMishrc   r   r   r   r   r	   	test_Mish4  s    zTestAutomaticUpgrade.test_Mishc                 C  s&   |  ddddgddggddgg d S )NModre   r   r    r   r   r   r   r	   
test_Mod_17  s    zTestAutomaticUpgrade.test_Mod_1c                 C  s.   | j ddddgddggddggddid d S )Nr  re   r   r    fmodr   r   r   r   r   r   r	   
test_Mod_2:  s    zTestAutomaticUpgrade.test_Mod_2c                 C  s6   | j dddddgdddggdddggddgid d S )	NZMulr   r   r    r'   r   r   r   r   r   r   r   r	   test_Mul=  s    
zTestAutomaticUpgrade.test_Mulc                 C  s.   | j ddddggddggtjgddid d S )NZMultinomialr   r    r(   Zsample_sizer>   r   r   r   r   r   r   r	   test_MultinomialF  s    z%TestAutomaticUpgrade.test_Multinomialc                 C  s   | j ddddgid d S )NZNegr   r   r   r   r   r   r   r   r	   test_NegP  s    zTestAutomaticUpgrade.test_Negc                 C  s.   |  dddddgddggg gtjtjg d S NZNegativeLogLikelihoodLossrW   r    r'   r(   r   r   r   r   r	    test_NegativeLogLikelihoodLoss_1S  s    
z5TestAutomaticUpgrade.test_NegativeLogLikelihoodLoss_1c              	   C  s6   |  dddddgddgdggg gtjtjtjg d S r  r   r   r   r   r	    test_NegativeLogLikelihoodLoss_2\  s    z5TestAutomaticUpgrade.test_NegativeLogLikelihoodLoss_2c                 C  s2   | j dddddgdddggddggtjgd d S )	NZNonMaxSuppressionre   r   r    r'   r(   r.   r9   r;   r   r   r   r	   test_NonMaxSuppressione  s    z+TestAutomaticUpgrade.test_NonMaxSuppressionc                 C  s(   | j ddddggddggtjgd d S )NZNonZeror   r    r   r'   r9   r;   r   r   r   r	   test_NonZeron  s        z!TestAutomaticUpgrade.test_NonZeroc                 C  s,   |  ddddggddggtjgtjg d S )NZNotr   r   r    r!   r   r   r   r	   test_Nots  s         zTestAutomaticUpgrade.test_Notc              	   C  s,   |  dddddgg dggddddgg d S )NZOneHotr   r    r'   r(   r   r.   r   r   r   r   r	   test_OneHotx  s    z TestAutomaticUpgrade.test_OneHotc                 C  s6   |  ddddgddggddggtjtjgtjg d S )NOrr   r   r    r!   r   r   r   r	   test_Or{  s    
zTestAutomaticUpgrade.test_Orc              	   C  s2   | j ddddggddggddddgdd	d
 d S )NZPadr   r    r'   r(   r   r         ?)r   rp   r   r   r   r   r   r	   test_Pad  s        zTestAutomaticUpgrade.test_Padc                 C  s,   |  dddddgdddggdddgg d S )NZPowr   r   r    r'   r   r   r   r   r	   test_Pow  s    zTestAutomaticUpgrade.test_Powc                 C  s6   | j dddddgdddggdddggddgid d S )	NZPRelur   r   r    r'   r   r   r   r   r   r   r   r	   
test_PRelu  s    
zTestAutomaticUpgrade.test_PReluc                 C  s>   |  ddddddgg g ddddgg g g g gddddgg d S )NZQLinearConvre   r   r    r(   r'   r   r   r   r   r   r	   test_QLinearConv  s    "z%TestAutomaticUpgrade.test_QLinearConvc                 C  s2   |  ddddgg g ddgg g g g gddgg d S )NZQLinearMatMulre   r   r    r'   r   r   r   r   r	   test_QLinearMatMul  s       z'TestAutomaticUpgrade.test_QLinearMatMulc              	   C  s<   |  dddddgg g gdddggtjtjtjgtjg d S )NZQuantizeLinearre   r    r'   r(   )r   r   rg   rM   r   r   r   r	   test_QuantizeLinear  s    
z(TestAutomaticUpgrade.test_QuantizeLinearc              	   C  s*   | j ddg dddggddddgid d S )NZRandomNormalr   r    r'   r(   r   r   r   r   r   r   r	   test_RandomNormal  s       
 z&TestAutomaticUpgrade.test_RandomNormalc              	   C  s^   t jdtjdddgtjdddtj	 dd}| j
dddddggdddgg|gd	 d S )
Nar    r'   r(   Trk   ZRandomNormalLiker   r   rq   r   liker   r   r	   test_RandomNormalLike  s      
 
 z*TestAutomaticUpgrade.test_RandomNormalLikec              	   C  s*   | j ddg dddggddddgid d S )NZRandomUniformr   r    r'   r(   r   r   r   r   r   r   r	   test_RandomUniform  s       
 z'TestAutomaticUpgrade.test_RandomUniformc              	   C  s^   t jdtjdddgtjdddtj	 dd}| j
dddddggdddgg|gd	 d S )
Nr*  r    r'   r(   Trk   ZRandomUniformLiker   r   rq   r+  r   r   r	   test_RandomUniformLike  s      
 
 z+TestAutomaticUpgrade.test_RandomUniformLikec                 C  s|   t jdtjg tdgd}t jdtjg tdgd}t jdtjg tdgd}| jdd	g g g gd
gg|||gd d S )Nr*  r   r   r   rW   cr   ZRangerI   r.   r   )r   rr   r   rg   rs   r   r   )r   startendstepr   r   r	   
test_Range  s        zTestAutomaticUpgrade.test_Rangec                 C  s   | j ddddgid d S )NZ
Reciprocalr   r   r   r   r   r   r   r   r	   test_Reciprocal  s    z$TestAutomaticUpgrade.test_Reciprocalc                 C  s$   |  dddddggdddgg d S )NZReduceL1r   r    r'   r(   r   r   r   r   r	   test_ReduceL1  s    z"TestAutomaticUpgrade.test_ReduceL1c                 C  s$   |  dddddggdddgg d S )NZReduceL2r   r    r'   r(   r   r   r   r   r	   test_ReduceL2  s    z"TestAutomaticUpgrade.test_ReduceL2c                 C  s$   |  dddddggdddgg d S )NZReduceLogSumr   r    r'   r(   r   r   r   r   r	   test_ReduceLogSum  s    z&TestAutomaticUpgrade.test_ReduceLogSumc                 C  s$   |  dddddggdddgg d S )NZReduceLogSumExpr   r    r'   r(   r   r   r   r   r	   test_ReduceLogSumExp  s    z)TestAutomaticUpgrade.test_ReduceLogSumExpc                 C  s$   |  dddddggdddgg d S )NZ
ReduceMeanr   r    r'   r(   r   r   r   r   r	   test_ReduceMean  s    z$TestAutomaticUpgrade.test_ReduceMeanc                 C  s$   |  dddddggdddgg d S )NZ	ReduceMaxr   r    r'   r(   r   r   r   r   r	   test_ReduceMax  s    z#TestAutomaticUpgrade.test_ReduceMaxc                 C  s$   |  dddddggdddgg d S )NZ	ReduceMinr   r    r'   r(   r   r   r   r   r	   test_ReduceMin  s    z#TestAutomaticUpgrade.test_ReduceMinc                 C  s$   |  dddddggdddgg d S )NZ
ReduceProdr   r    r'   r(   r   r   r   r   r	   test_ReduceProd  s    z$TestAutomaticUpgrade.test_ReduceProdc                 C  s$   |  dddddggdddgg d S )NZ	ReduceSumr   r    r'   r(   r   r   r   r   r	   test_ReduceSum  s    z#TestAutomaticUpgrade.test_ReduceSumc                 C  s$   |  dddddggdddgg d S )NZReduceSumSquarer   r    r'   r(   r   r   r   r   r	   test_ReduceSumSquare  s    z)TestAutomaticUpgrade.test_ReduceSumSquarec                 C  s   | j ddddgid d S )NZRelur   r   r   r   r   r   r   r   r	   	test_Relu  s    zTestAutomaticUpgrade.test_Reluc              	   C  s6   | j dddddggdddggdgdddgd	d
 d S )NZReshaper   r    r'   r(   re   r   r   )r   r   r   r   r   r   r   r	   test_Reshape  s    

z!TestAutomaticUpgrade.test_Reshapec                 C  s(   |  dddddgdggdddgg d S )NZResizere   r    r'   r(   r   rG   r   r   r   r   r	   test_Resize  s    z TestAutomaticUpgrade.test_Resizec                 C  s2   |  dddddgdggdddggtjtjg d S )NZReverseSequencere   r    r'   r(   r   r   r   r   r	   test_ReverseSequence	  s    

z)TestAutomaticUpgrade.test_ReverseSequencec                 C  sF   | j dddddgdddgdddggddddgdddggddid	 d S )
NRNNr   r(   r    r'   r   r.   r   r   r   r   r   r   r	   
test_RNN_1  s    zTestAutomaticUpgrade.test_RNN_1c                 C  sH   | j dddddgdddgdddggddddgdddggddd	d
 d S )NrD  r   r(   r    r'   r   r.   r   r   r   r   r   r   r   r	   
test_RNN_2  s    zTestAutomaticUpgrade.test_RNN_2c                 C  sr   | j dddddgdddgdddgddgdgdddggddddgdddggtjtjtjtjtjtjgd	did
 d S )NrD  r   r(   r    r'   r   r.   rW   r   r   r   r   r   r   r	   
test_RNN_3&  s    ,zTestAutomaticUpgrade.test_RNN_3c              	   C  s@   |  ddddddgddgdggddddggtjtjtjg d S )NRoiAlignre   r   r    r0   r'   r   r   r   r   r   r	   test_RoiAlign_18  s    z$TestAutomaticUpgrade.test_RoiAlign_1c                 C  sH   | j ddddddgddgdggddddggtjtjtjgd	d
id d S )NrH  r   r   r    r0   re   r'   r   Zcoordinate_transformation_modeZ
half_pixelr   r   r   r   r   r	   test_RoiAlign_2A  s    z$TestAutomaticUpgrade.test_RoiAlign_2c                 C  s   |  dd d S )NZRoundrI   r   r   r   r   r	   
test_RoundK  s    zTestAutomaticUpgrade.test_Roundc              	   C  s@   |  ddddgddgddggddggtjtjtjgtjg d S )NZScatterr   r   r    r   r   r   r   r   r	   test_ScatterN  s    z!TestAutomaticUpgrade.test_Scatterc              	   C  s@   |  ddddgddgddggddggtjtjtjgtjg d S )NScatterElementsrI   r   r    r   r   r   r   r   r	   test_ScatterElements_1X  s    z+TestAutomaticUpgrade.test_ScatterElements_1c              	   C  sH   | j ddddgddgddggddggtjtjtjgtjgddid d S )	NrM  r   r   r    r   	reductionr   r   r   r   r   r   r	   test_ScatterElements_2b  s    z+TestAutomaticUpgrade.test_ScatterElements_2c              	   C  s@   |  ddddgddgddggddggtjtjtjgtjg d S )N	ScatterNDrI   r   r    r   r   r   r   r   r	   test_ScatterND_1m  s    z%TestAutomaticUpgrade.test_ScatterND_1c              	   C  sH   | j ddddgddgddggddggtjtjtjgtjgddid d S )	NrQ  r   r   r    r   rO  mulr   r   r   r   r   r	   test_ScatterND_2w  s    z%TestAutomaticUpgrade.test_ScatterND_2c                 C  s   t jdt jjdg}t jdt jjdg}t jdt jjdg}t jdt jjdg}t jjdddgdgd}t jjddgdgd}t j||gd	||g||g}| jd
ddddgdddggddgdddgg|ddd d S )Nsum_inr   next_insum_outscan_outr&   r   r   Z	scan_bodyZScanr   r   r   r    )r   Znum_scan_inputsr   )r   r   r   r   rg   r   r   r   )r   rU  rV  rW  rX  add_nodeZid_noder   r   r   r	   	test_Scan  sV                   zTestAutomaticUpgrade.test_Scanc                 C  s   | j ddddgid d S )NZSelur   r   r   r   r   r   r   r   r	   	test_Selu  s    zTestAutomaticUpgrade.test_Seluc                 C  s(   | j dddddggdggtjgd d S )NZShaper   r    r'   r(   r9   r;   r   r   r   r	   
test_Shape  s      
  zTestAutomaticUpgrade.test_Shapec                 C  s   |  dd d S )NZShrinkr   r   r   r   r   r	   test_Shrink  s    z TestAutomaticUpgrade.test_Shrinkc                 C  s   | j ddddgid d S )NZSigmoidr   r   r   r   r   r   r   r   r	   test_Sigmoid  s    z!TestAutomaticUpgrade.test_Sigmoidc                 C  s   |  dd d S )NZSignr   r   r   r   r   r	   	test_Sign  s    zTestAutomaticUpgrade.test_Signc                 C  s   |  dd d S )NZSinhr   r   r   r   r   r	   	test_Sinh  s    zTestAutomaticUpgrade.test_Sinhc                 C  s   |  dd d S )NZSinr   r   r   r   r   r	   test_Sin  s    zTestAutomaticUpgrade.test_Sinc                 C  s&   | j dddddggg gtjgd d S )NSizer   r    r'   r(   r9   r;   r   r   r   r	   	test_Size  s      
  zTestAutomaticUpgrade.test_Sizec              	   C  s<   | j dddddggdddggddgddgddgdd	 d S )
NZSlicer   r    r'   r(   r   r   )r   ZstartsZendsr   r   r   r   r   r	   
test_Slice  s    

zTestAutomaticUpgrade.test_Slicec                 C  s   | j ddddid d S )NSoftmaxr   r,   r   r   r   r   r   r   r	   test_Softmax_0  s    z#TestAutomaticUpgrade.test_Softmax_0c                 C  s   | j ddddid d S )Nre  r   r,   r   r   r   r   r   r	   test_Softmax_1  s    z#TestAutomaticUpgrade.test_Softmax_1c                 C  s   | j ddddid d S )Nre  r   r,   r   r   r   r   r   r   r	   test_Softmax_2  s    z#TestAutomaticUpgrade.test_Softmax_2c                 C  s   | j ddddid d S )Nre  r   r,   r   r   r   r   r   r	   test_Softmax_3  s    z#TestAutomaticUpgrade.test_Softmax_3c                 C  s   | j ddddid d S )Nre  r   r,   r   r   r   r   r   r	   test_Softmax_4  s    z#TestAutomaticUpgrade.test_Softmax_4c                 C  s   | j ddddid d S )Nre  r   r,   r   r   r   r   r   r	   test_Softmax_5  s    z#TestAutomaticUpgrade.test_Softmax_5c                 C  s   |  dd d S )NZSoftplusr   r   r   r   r   r	   test_Softplus  s    z"TestAutomaticUpgrade.test_Softplusc                 C  s   |  dd d S )NZSoftsignr   r   r   r   r   r	   test_Softsign  s    z"TestAutomaticUpgrade.test_Softsignc                 C  s0   |  ddddddgddggg gtjtjg d S )NZSoftmaxCrossEntropyLossrW   r    r'   r(   r.   r   r   r   r   r	   test_SoftmaxCrossEntropyLoss  s    
z1TestAutomaticUpgrade.test_SoftmaxCrossEntropyLossc                 C  s0   | j ddddddggddddggddid	 d S )
NZSpaceToDepthr   r    r   rW   r'   r   r   r   r   r   r   r   r	   test_SpaceToDepth  s        z&TestAutomaticUpgrade.test_SpaceToDepthc              	   C  sD   | j dddddggdddgdddgdddggddddgdd d S )	NZSplitr   r    r'   r   r   )r,   splitr   r   r   r   r   r	   
test_Split  s    
zTestAutomaticUpgrade.test_Splitc                 C  s   | j ddddgid d S )NZSqrtr   r   r   r   r   r   r   r   r	   	test_Sqrt  s    zTestAutomaticUpgrade.test_Sqrtc              	   C  s(   |  dddddddggdddgg d S )Nr   r   r   r    r'   r   r   r   r   r	   test_Squeeze  s    z!TestAutomaticUpgrade.test_Squeezec              	   C  s4   | j ddddggddggtjgtjgddid d S )NZStringNormalizerre   r   r    Zcase_change_actionZLOWERr   )r   r   STRINGr   r   r   r	   test_StringNormalizer  s    z*TestAutomaticUpgrade.test_StringNormalizerc                 C  s6   | j dddddgdddggdddggddgid d S )	NZSubr   r   r    r'   r   r   r   r   r   r   r   r	   test_Sub  s    
zTestAutomaticUpgrade.test_Subc                 C  s6   | j dddddgdddggdddggddgid d S )	NZSumr   r   r    r'   r   r   r   r   r   r   r   r	   test_Sum  s    
zTestAutomaticUpgrade.test_Sumc                 C  s   | j ddddgid d S )NZTanhr   r   r   r   r   r   r   r   r	   	test_Tanh  s    zTestAutomaticUpgrade.test_Tanhc                 C  s   |  dd d S )NZTanr   r   r   r   r   r	   test_Tan  s    zTestAutomaticUpgrade.test_Tanc                 C  s6   | j dddggdggdddddd	gdd
gdd d S )NZTfIdfVectorizerr   r    r(   r   r   ZTFIDFr   r0   r'   )Zmax_gram_lengthZmax_skip_countZmin_gram_lengthr   Zngram_countsZngram_indexesr   r   r   r   r   r	   test_TfIdfVectorizer  s    z)TestAutomaticUpgrade.test_TfIdfVectorizerc                 C  s   |  dd d S )NZThresholdedRelure   r   r   r   r   r	   test_ThresholdedRelu.  s    z)TestAutomaticUpgrade.test_ThresholdedReluc              	   C  sZ   t jdtjdgtdddgd}| jddddd	gdggdd
dggtjtjg|gd d S )Nr   r    r   r   r   ZTiler.   r'   r(   r   rG   r   r   )r   Zrepeatsr   r   r	   	test_Tile1  s       

zTestAutomaticUpgrade.test_Tilec                 C  s>   | j dddddggdddgdddggtjtjgddid d S )	NZTopKr   r    r'   r(   r   kr>   r   r   r   r   r	   	test_TopK?  s    

zTestAutomaticUpgrade.test_TopKc                 C  s>   | j dddddddggdddddggddd	dddgid
 d S )NZ	Transposer   r   r(   r    r   permr   r'   r   r   r   r   r   r	   test_TransposeI  s    z#TestAutomaticUpgrade.test_Transposec                 C  s   |  dd d S )NZTrilurR   r   r   r   r   r	   
test_TriluR  s    zTestAutomaticUpgrade.test_Triluc                 C  s    |  dddddggd gg d S )NUniquerI   r    r'   r(   r   r   r   r   r	   test_Unique_1U  s    z"TestAutomaticUpgrade.test_Unique_1c                 C  s,   | j dddddggdd dggddid d S )	Nr  rI   r    r'   r(   r,   r   r   r   r   r   r   r	   test_Unique_2X  s      
 
 z"TestAutomaticUpgrade.test_Unique_2c                 C  s0   | j dddddggddddggddgid d S )	Nr   r   r    r'   r(   r   r   r   r   r   r   r   r	   test_Unsqueeze]  s      
  z#TestAutomaticUpgrade.test_Unsqueezec                 C  s2   | j ddddddggddddggdd	d
d d S )NZUpsampler   r    r'   r(   r.   re   g       @r"  )Zwidth_scaleZheight_scaler   r   r   r   r   r	   test_Upsampleb  s    z"TestAutomaticUpgrade.test_Upsamplec              	   C  s:   |  ddddgddgddggddggtjtjtjg d S )NZWherer   r   r    )r   r   r"   rg   r   r   r   r	   
test_Wherek  s    zTestAutomaticUpgrade.test_Wherec                 C  s6   |  ddddgddggddggtjtjgtjg d S )NZXorr   r   r    r!   r   r   r   r	   test_Xort  s    
zTestAutomaticUpgrade.test_Xorc                 C  s>   | j dddddgdddggdddggtjtjgtjgd d S )NZCastLikerG   r   r    r'   r   r   )r   r   rg   ZFLOAT16r   r   r   r	   test_CastLike  s    

z"TestAutomaticUpgrade.test_CastLikec              	   C  sP   | j ddddddgddgddggddddggtjtjtjgtjgddid d S )	NZLayerNormalization   r   r    r'   r(   r,   r   r   r   r   r   r	   test_LayerNormalization  s    z,TestAutomaticUpgrade.test_LayerNormalizationstr)window_function_namer   c                 C  sB   t jdtjg tdgd}| j|dg gdggtjg|gd d S )Nr*  re   r   r  r   )r   rr   r   r<   rs   r   r   )r   r  r   r   r   r	   _test_window_function  s    z*TestAutomaticUpgrade._test_window_functionc                 C  s   |  d d S )NZBlackmanWindowr  r   r   r   r	   test_BlackmanWindow  s    z(TestAutomaticUpgrade.test_BlackmanWindowc                 C  s   |  d d S )NZ
HannWindowr  r   r   r   r	   test_HannWindow  s    z$TestAutomaticUpgrade.test_HannWindowc                 C  s   |  d d S )NZHammingWindowr  r   r   r   r	   test_HammingWindow  s    z'TestAutomaticUpgrade.test_HammingWindowc                 C  s  |  dddddgg gdddgg |  dddddgg gdddgg | j dddddgg gdddggddid | j dddddgg gdddggddid | j dddddgg gdddggd	did | j dddddgg gdddggd	did | j dddddgg gdddggdd
dd d S )NZDFTr  r   r   r   r   onesidedr   inverser   )r  r,   r   r   r   r   r	   test_DFT  sJ    ""   
    
    
    
    
 zTestAutomaticUpgrade.test_DFT)operator_namer   c                 C  s  t jdtjddgtjddtjd}t jdtj	dgt
dgd}t jdtjd	gtd	tjd}| j|d
ddgdgd	ggddd	dggtjtj	tjtj	g|||gd t jdtjddgtjddtjd}t jdtj	dgt
dgd}t jdtjd	gtd	tjd}| j|d
ddgdgd	ggddddggtjtj	tjtj	gddi|||gd t jdtjdddgtjdddtjd}t jdtj	dgt
dgd}t jdtjd	gtd	tjd}| j|d
dddgdgd	ggddd	dggtjtj	tjtj	g|||gd t jdtjdddgtjdddtjd}t jdtj	dgt
dgd}t jdtjd	gtd	tjd}t jdtj	dgt
d	gd}| j|d
dddgdgd	ggddddggtjtj	tjtj	gddi||||gd d S )Nr*  r   @   r   r   r   r   r0  r   r  r   r   r   r  )r   r   e)r   rr   r   rg   rs   rt   ru   rv   rw   r<   r   Zonesr   )r   r  signalZ
frame_stepZwindowZframe_lengthr   r   r	   "_test_short_time_fourier_transform  s       
      
      
      
      

z7TestAutomaticUpgrade._test_short_time_fourier_transformc                 C  s   |  d d S )NZSTFT)r  r   r   r   r	   	test_STFT-  s    zTestAutomaticUpgrade.test_STFTc                 C  s  t jdtjg tdgd}t jdtjg tdgd}t jdtjg tdgd}t jdtjg tdgd}t jd	tjg td
gd}| jddg g g g g gddggtjtjtjtjtjg|||||gd t jdtjg tdgd}t jdtjg tdgd}t jdtjg tdgd}t jdtjg tdgd}t jd	tjg td
gd}| jddg g g g g gddggtjtjtjtjtjg|||||gd d S )Nr*  re   r   r   r  r0  r   dr  r   ZMelWeightMatrixr  !   r   r0      r   )r   rr   r   r<   rs   r   rg   r   )r   Znum_mel_binsZ
dft_lengthZsample_rateZlower_edge_hertzZupper_edge_hertzr   r   r	   test_MelWeightMatrix0  s       
   
   
   
   
   
   
   
   
   
z)TestAutomaticUpgrade.test_MelWeightMatrixc                 C  s~   t jdtjddgtdddddddd	gd
}t jdtjdgtddgd
}| jddg g gddggtjtjg||gd d S )Ninputr   r'   r   r    r(   r.   r   r   r   r   ZCenterCropPadrc   r   )r   rr   r   rg   rs   r   r<   r   )r   Zinput_r   r   r   r	   test_CenterCropPad{  s(       
z'TestAutomaticUpgrade.test_CenterCropPadc                 C  s,   |  ddddggddggtjgtjg d S )NZ
BitwiseNotrc   r   r    r  r   r   r   r	   test_BitwiseNot  s    z$TestAutomaticUpgrade.test_BitwiseNotc                 C  s6   |  ddddgddggddggtjtjgtjg d S )NZ
BitwiseAndrc   r   r    r   r   ZINT16r   r   r   r	   test_BitwiseAnd  s    
z$TestAutomaticUpgrade.test_BitwiseAndc                 C  s6   |  ddddgddggddggtjtjgtjg d S )NZ	BitwiseOrrc   r   r    r  r   r   r   r	   test_BitwiseOr  s    
z#TestAutomaticUpgrade.test_BitwiseOrc                 C  s6   |  ddddgddggddggtjtjgtjg d S )NZ
BitwiseXorrc   r   r    r  r   r   r   r	   test_BitwiseXor  s    
z$TestAutomaticUpgrade.test_BitwiseXorc                 C  s:   | j ddddddgdgdggddddggdddd	 d S )
NZGroupNormalizationrc   r    r'   r   r   gh㈵>)epsilonZ
num_groupsr   r   r   r   r   r	   test_GroupNormalization  s    z,TestAutomaticUpgrade.test_GroupNormalizationc                 C  s&   |  ddddgddggddgg d S )NZStringConcatr0   r   r    r   r   r   r   r	   test_StringConcat  s    z&TestAutomaticUpgrade.test_StringConcatc                 C  s,   |  ddddggddggtjgtjg d S )NZRegexFullMatchr0   r   r    )r   r   rw  r"   r   r   r   r	   test_RegexFullMatch  s    z(TestAutomaticUpgrade.test_RegexFullMatchc                 C  s^   t j }dd |D }ddddddd	d
dddddh}|| }|t| j }| |t  d S )Nc                 S  s   h | ]}|j d kr|jqS )r   )domainr   ).0Zschemar   r   r	   	<setcomp>  s     
 z7TestAutomaticUpgrade.test_ops_tested.<locals>.<setcomp>ZConcatFromSequenceZ
SequenceAtZSequenceConstructZSequenceEmptyZSequenceEraseZSequenceInsertZSequenceLengthZSequenceMapZSplitToSequenceOptionalZOptionalGetElementZOptionalHasElementZStringSplit)r   ZdefsZget_all_schemassetr   assertEqual)r   Zall_schemasZall_op_namesZexcluded_opsZexpected_tested_opsZuntested_opsr   r   r	   test_ops_tested  s&    
z$TestAutomaticUpgrade.test_ops_testedN)__name__
__module____qualname__classmethodr
   r   r   r   r   r#   r$   r%   r)   r+   r-   r5   r7   r=   r?   rA   rB   rC   rD   rF   rH   rN   rQ   rS   rU   rV   rX   rZ   r]   r`   ra   rd   rf   rh   ri   ry   rz   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r#  r$  r%  r&  r'  r(  r)  r-  r.  r/  r4  r5  r6  r7  r8  r9  r:  r;  r<  r=  r>  r?  r@  rA  rB  rC  rE  rF  rG  rI  rJ  rK  rL  rN  rP  rR  rT  rZ  r[  r\  r]  r^  r_  r`  ra  rc  rd  rf  rg  rh  rj  rl  rn  ro  rp  rq  rr  rt  ru  rv  rx  ry  rz  r{  r|  r}  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r   r	   r      s  


			


							


		.(




	
	
			
				
		

	



		
		
			
rK



	
r   __main__)
__future__r   ZunittestZautomatic_conversion_test_baseZnumpyrs   r   r   r   ZTestAutomaticConversionr   r  mainr   r   r   r	   <module>   s*                e