
    Si                        S SK Jr  S SKrS SKrS SKrS SKrSr " S S\R                  R                  5      r	 " S S\R                  5      r " S S	\R                  5      rg)
    )annotationsNaH  <
    ir_version: 8,
    opset_import: ["" : 17, "local" : 1]
>
agraph (float[N] X) => (float[N] Y) {
    Y = local.foo (X)
}

<opset_import: ["" : 17, "local" : 1], domain: "local">
foo (x) => (y) {
    temp = Add(x, x)
    y = local.bar(temp)
}

<opset_import: ["" : 17], domain: "local">
bar (x) => (y) {
    y = Mul (x, x)
}c                  B    \ rS rSrSrSr\" S15      rS	S jrS
S jr	Sr
g)_OnnxTestTextualSerializer!   z:Serialize and deserialize the ONNX textual representation.onnxtextz	.onnxtextc                b    [         R                  R                  U5      nUR                  S5      $ )Nutf-8)onnxprinterto_textencode)selfprototexts      [/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/onnx/test/serialization_test.pyserialize_proto*_OnnxTestTextualSerializer.serialize_proto'   s%    ||##E*{{7##    c                B   UR                  S5      n[        U[        R                  5      (       a  [        R                  R                  U5      $ [        U[        R                  5      (       a  [        R                  R                  U5      $ [        U[        R                  5      (       a  [        R                  R                  U5      $ [        U[        R                  5      (       a  [        R                  R                  U5      $ [        S[        U5       35      e)Nr	   zUnsupported proto type: )decode
isinstancer
   
ModelProtoparserparse_model
GraphProtoparse_graphFunctionProtoparse_function	NodeProto
parse_node
ValueErrortype)r   
serializedr   r   s       r   deserialize_proto,_OnnxTestTextualSerializer.deserialize_proto+   s      )eT__--;;**400eT__--;;**400eT//00;;--d33eT^^,,;;))$//3DK=ABBr    N)returnbytes)r#   r(   )__name__
__module____qualname____firstlineno____doc__supported_format	frozensetfile_extensionsr   r$   __static_attributes__r&   r   r   r   r   !   s"    D!.O$
Cr   r   c                  <    \ rS rSrSS jrSS jrSS jrSS jrSrg)	TestRegistry8   c                    [        5       U l        [        R                  R                  R                  U R                  5        g )N)r   
serializerr
   serializationregistryregisterr   s    r   setUpTestRegistry.setUp9   s*    46##,,T__=r   c                    [         R                  R                  R                  S5      nU R	                  XR
                  5        g )Nr   )r
   r7   r8   getassertIsr6   )r   r6   s     r   (test_get_returns_the_registered_instance5TestRegistry.test_get_returns_the_registered_instance=   s.    ''0044Z@
j//2r   c                    U R                  [        5         [        R                  R                  R                  S5        S S S 5        g ! , (       d  f       g = f)Nunsupported)assertRaisesr!   r
   r7   r8   r>   r:   s    r   &test_get_raises_for_unsupported_format3TestRegistry.test_get_raises_for_unsupported_formatA   s6    z*''++M: +**s   *A		
Ac                Z   [         R                  R                  [        5      n[        R
                  " 5        n[        R                  R                  US5      n[         R                  " XSS9  [        USS9 nUR                  5       nU R                  U[         R                  R                  U5      5        S S S 5        [         R                  " USS9nU R                  UR!                  SS9UR!                  SS95        S S S 5        g ! , (       d  f       NX= f! , (       d  f       g = f)Nz
model.onnxr   )formatr	   )encodingTdeterministic)r
   r   r   _TEST_MODELtempfileTemporaryDirectoryospathjoin
save_modelopenreadassertEqualr   r   
load_modelSerializeToString)r   modeltmpdir
model_pathfcontentloaded_models          r   4test_onnx_save_load_model_uses_the_custom_serializerATestRegistry.test_onnx_save_load_model_uses_the_custom_serializerE   s    ''4((*ffl;JOOEjA j73q&&(  $,,*>*>u*EF 4  ??:jIL''d';..T.B +*
 43 +*s&   A D9A D9A	D
D	D
D*)r6   Nr'   None)	r)   r*   r+   r,   r;   r@   rE   r^   r1   r&   r   r   r3   r3   8   s    >3;r   r3   c                      \ rS rSrSS jrSrg)TestCustomSerializerX   c                "   [        5       n[        R                  R                  [        5      nUR                  U5      nUR                  U[        R                  " 5       5      nU R                  UR                  SS9UR                  SS95        g )NTrJ   )
r   r
   r   r   rL   r   r$   r   rU   rW   )r   r6   rX   r#   deserializeds        r    test_serialize_deserialize_model5TestCustomSerializer.test_serialize_deserialize_modelY   sw    /1
''4//6
!33J@QR##$#7***>	
r   r&   Nr`   )r)   r*   r+   r,   rg   r1   r&   r   r   rc   rc   X   s    
r   rc   )
__future__r   rO   rM   unittestr
   rL   r7   ProtoSerializerr   TestCaser3   rc   r&   r   r   <module>rm      s\    # 	   *C!3!3!C!C C.8$$ @	
8,, 	
r   