
    h                     H    S SK rS SKrS SKJr  S SKJr  S r " S S\5      rg)    N)Base)expectc                     [         R                  " U [         R                  S9[         R                  " U[         R                  S9[         R                  " U[         R                  S94$ )Ndtype)nparrayint64)indicesinverse_indicescountss      \/var/www/fran/franai/venv/lib/python3.13/site-packages/onnx/backend/test/case/node/unique.pyspecify_int64r      sB    
)
1
rxx(     c                   x    \ rS rSr\S	S j5       r\S	S j5       r\S	S j5       r\S	S j5       r\S	S j5       r	Sr
g)
Unique   Nc                     [         R                  R                  SS// SQS9n [        R                  " / SQ[        R
                  S9n[        R                  " USSS5      u  p#pE[        X4U5      u  p4n[        U U/X#XE/SS	9  g )
Nr   XYr   r   r   )inputsoutputs       @      ?r         @g      @r   r   Ttest_unique_sorted_without_axisr   r   name	onnxhelper	make_noder   r	   float32uniquer   r   node_sortedxyr   r   r   s         r   export_sorted_without_axis!Unique.export_sorted_without_axis   s    kk++5A , 
 HH32::F.0ii4t.L+O+8f,
(& 	392		
r   c            
      H   [         R                  R                  SS// SQSS9n [        R                  " / SQ[        R
                  S9n[        R                  " USSS5      u  p#pE[        R                  " U5      n[        [        U[        R                  " [        U5      5      5      5      nX6   n[        R                  " XSS	9n[        R                  " U Vs/ s H  oU   PM	     sn[        R                  S9nXV   n[        X4U5      u  p4n[!        U U/X#XE/S
S9  g s  snf )Nr   r   r   r   )r   r   sortedr   r   Taxis#test_unique_not_sorted_without_axisr   )r"   r#   r$   r   r	   r%   r&   argsortdictziparangelentakeasarrayr
   r   r   )	node_not_sortedr)   r*   r   r   r   argsorted_indicesinverse_indices_mapis	            r   export_not_sorted_without_axis%Unique.export_not_sorted_without_axis)   s   ++//5A	 0 
 HH32::F.0ii4t.L+O JJw/"!299S1B-C#DE
 ,GGAQ'**-<=_#_=RXX
 *+8f,
(& 	396		
 >s   Dc                     [         R                  R                  SS// SQSSS9n [        R                  " / SQ/ SQ/ SQ/[        R
                  S	9n[        R                  " US
S
S
SS9u  p#pE[        X4U5      u  p4n[        U U/X#XE/SS9  g )Nr   r   r      r   r   r   r.   r0   r@   r   r   )         r   Tr/   test_unique_sorted_with_axisr   r!   r'   s         r   export_sorted_with_axisUnique.export_sorted_with_axisV   s    kk++5A , 
 HHiI6bjjI.0ii4tRS.T+O+8f,
(& 	39/		
r   c                  8   [         R                  R                  SS// SQSSS9n [        R                  " SS/SS/SS/SS//SS/SS/SS/SS///[        R
                  S	9n[        R                  " US
S
S
SS9u  p#pE[        X4U5      u  p4n[        U U/X#XE/SS9  g )Nr   r   r   r@   rA   r   g        r   r   Tr/   test_unique_sorted_with_axis_3dr   r!   r'   s         r   export_sorted_with_axis_3d!Unique.export_sorted_with_axis_3dv   s    kk++5A , 
 HHsc3Z#sc3Z@sc3Z#sc3Z@ **
 /1ii4tRS.T+O+8f,
(&  	392		
r   c                     [         R                  R                  SS// SQSSS9n [        R                  " / SQ/ SQ/ SQ/[        R
                  S	9n[        R                  " US
S
S
SS9u  p#pE[        X4U5      u  p4n[        U U/X#XE/SS9  g )Nr   r   r   r@   rA   rB   )rC   rD   rD   r   Tr/   %test_unique_sorted_with_negative_axisr   r!   r'   s         r    export_sorted_with_negative_axis'Unique.export_sorted_with_negative_axis   s    kk++5A , 
 HHiI6bjjI.0ii4tRT.U+O+8f,
(& 	398		
r    )returnN)__name__
__module____qualname____firstlineno__staticmethodr+   r=   rG   rK   rP   __static_attributes__rR   r   r   r   r      sf    
 
& *
 *
X 
 
> &
 &
P 
 
r   r   )	numpyr   r"   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r   rR   r   r   <module>r]      s&   
   , .j
T j
r   