o
    wi                     @  sh   d dl mZ d dlmZmZ d dlZd dlZd dlm	Z	 d dl
mZ er*d dlmZ G dd de	ZdS )	    )annotations)TYPE_CHECKINGAnyN)Base)expect)Sequencec                   @  s   e Zd ZedddZdS )ConcatreturnNonec               
   C  s  ddgddgfddgddggddgddggfddgddggddgddgggd	d
gddggddgddgggfd} |   D ]\}}dd |D }tt|d jD ]3}dd tt|D }tjjdt|dg|d}t	||}t
|t||gd| d t| d qPtt|d j dD ]5}dd tt|D }tjjdt|dg|d}t	||}t
|t||gd| d tt| d qq<d S )N                        	   
                     )1d2d3dc                 S  s   g | ]
}t j|t jd qS ))dtype)npasarrayfloat32).0v r$   _/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/onnx/backend/test/case/node/concat.py
<listcomp>   s    z!Concat.export.<locals>.<listcomp>r   c                 S     g | ]}d t | qS valuestrr"   kr$   r$   r%   r&   !       r   output)inputsoutputsaxistest_concat__axis_)r0   r1   namec                 S  r'   r(   r*   r,   r$   r$   r%   r&   .   r.   _axis_negative_)itemsrangelenshapeonnxhelper	make_nodelistr   concatenater   r+   abs)
test_cases	test_casevalues_valuesiin_argsnoder/   r$   r$   r%   export   sD   	zConcat.exportN)r	   r
   )__name__
__module____qualname__staticmethodrH   r$   r$   r$   r%   r      s    r   )
__future__r   typingr   r   numpyr   r;   onnx.backend.test.case.baser   onnx.backend.test.case.noder   collections.abcr   r   r$   r$   r$   r%   <module>   s   