o
    soiW                     @  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                   @  s6   e Zd Zed
ddZed
ddZed
ddZd	S )TensorScatterreturnNonec                  C  s   t jjdg ddgdd} tjg dg dg dg d	ggg dg dg dg d	gggtjd
}tjg dggg dgggtjd
}tjddgtjd
}tjg dg dg dg d	ggg dg dg dg d	gggtjd
}t| |||g|gdd d S )Nr   
past_cacheupdatewrite_indicespresent_cachelinearinputsoutputsmode               r            	   r   r   r   r   r   r   r   r   r   r   dtyper   r   r   r   r   r   r   r   r   r   r   r   test_tensorscatterr   r   nameonnxhelper	make_nodenparrayfloat32int64r   noder	   r
   r   r    r0   ]/home/ubuntu/.local/lib/python3.10/site-packages/onnx/backend/test/case/node/tensorscatter.pyexport_tensorscatter   s>   


z"TensorScatter.export_tensorscatterc                  C  s
  t jjdg ddgdd} tjg dg dg dg d	ggg dg dg dg d	gggtjd
}tjg dg dggg dg dgggtjd
}tjddgtjd
}tjg dg dg dg d	ggg dg dg dg dgggtjd
}t| |||g|gdd d S )Nr   r   r   circularr   r   r   r   r   r   r!   r   r   r   r   r   r"   r   r   r   r   r   r   r   test_tensorscatter_circularr$   r&   r.   r0   r0   r1   export_tensorscatter_circular3   sJ   
z+TensorScatter.export_tensorscatter_circularc                  C  s>  t jjdg ddgd} tjg dg dg dg dgg dg dg dg dgg dg dg dg dggtjd	}tjg d
g dgg dg dgg dg dggtjd	}tjg dtjd	}tjg dg d
g dg dgg dg dg dg dgg dg dg dg dggtjd	}t| |||g|gdd d S )Nr   r   r   )r   r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r!   r4   )r   r   r   r   r   r5   )r   r   r   r   r   )r   r   r   test_tensorscatter_3dr$   r&   r.   r0   r0   r1   export_tensorscatter_3db   s~   
z%TensorScatter.export_tensorscatter_3dN)r   r   )__name__
__module____qualname__staticmethodr2   r7   r9   r0   r0   r0   r1   r      s    $.r   )

__future__r   numpyr*   r'   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r0   r0   r0   r1   <module>   s   