
    Ng
                     J    d dl Zd dlZd dlmZ d dlmZ  G d de          ZdS )    N)Base)expectc                       e Zd Zedd            Zedd            Zedd            Zedd            Zedd            ZdS )		UnsqueezereturnNc            
         t           j                            ddd                              t           j                  } t          | j                  D ]}t          j        |g                              t           j                  }t          j
                            dddgdg          }t          j        | |	          }t          || |g|gd
t          |          z              d S )N         r   xaxesyinputsoutputsaxistest_unsqueeze_axis_r   r   name)nprandomrandnastypefloat32rangendimarrayint64onnxhelper	make_nodeexpand_dimsr   str)r   ir   noder   s        a/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/backend/test/case/node/unsqueeze.pyexport_unsqueeze_one_axisz#Unsqueeze.export_unsqueeze_one_axis   s    IOOAq!$$++BJ77qv 	 	A8QC==''11D;((V} )  D
 qq)))A4y+c!ff4	    	 	    c                     t           j                            ddd                              t           j                  } t          j        ddg                              t           j                  }t          j        	                    dddgdg	          }t          j
        | d
          }t          j
        |d
          }t          || |g|gd           d S )Nr	   r
   r      r   r   r   r   r   r   test_unsqueeze_two_axesr   r   r   r   r   r   r   r   r    r!   r"   r#   r   r   r   r&   r   s       r'   export_unsqueeze_two_axesz#Unsqueeze.export_unsqueeze_two_axes!   s    IOOAq!$$++BJ77xA&&rx00{$$=E % 
 

 N11%%%N11%%%tQIs9RSSSSSSr)   c                     t           j                            ddd                              t           j                  } t          j        g d                              t           j                  }t          j        	                    dddgdg	          }t          j
        | d
          }t          j
        |d          }t          j
        |d          }t          || |g|gd           d S )Nr	   r
   r   )   r
   r   r   r   r   r   r   r1   r   test_unsqueeze_three_axesr   r-   r.   s       r'   export_unsqueeze_three_axesz%Unsqueeze.export_unsqueeze_three_axes0   s    IOOAq!$$++BJ77x			""))"(33{$$=E % 
 

 N11%%%N11%%%N11%%%tQIs9TUUUUUUr)   c                     t           j                            ddd                              t           j                  } t          j        g d                              t           j                  }t          j        	                    dddgdg	          }t          j
        | d
          }t          j
        |d          }t          j
        |d          }t          || |g|gd           d S )Nr	   r
   r   )r   r
   r1   r   r   r   r   r   r1   r   test_unsqueeze_unsorted_axesr   r-   r.   s       r'   export_unsqueeze_unsorted_axesz(Unsqueeze.export_unsqueeze_unsorted_axes@   s    IOOAq!$$++BJ77x			""))"(33{$$=E % 
 

 N11%%%N11%%%N11%%%tQIs9WXXXXXXr)   c                     t           j                            dddgdg          } t          j                            dddd                              t          j                  }t          j        d	g                              t          j	                  }t          j
        |d	
          }t          | ||g|gd           d S )Nr   r   r   r   r   r+   r	   r   r   test_unsqueeze_negative_axesr   )r    r!   r"   r   r   r   r   r   r   r   r#   r   )r&   r   r   r   s       r'   export_unsqueeze_negative_axesz(Unsqueeze.export_unsqueeze_negative_axesP   s    {$$=E % 
 

 IOOAq!Q''..rz::x~~$$RX..N12&&&tQIs9WXXXXXXr)   )r   N)	__name__
__module____qualname__staticmethodr(   r/   r3   r6   r:    r)   r'   r   r      s           \& T T T \T V V V \V Y Y Y \Y 	Y 	Y 	Y \	Y 	Y 	Yr)   r   )numpyr   r    onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r?   r)   r'   <module>rC      s   
      , , , , , , . . . . . .NY NY NY NY NY NY NY NY NY NYr)   