
    h                     B    S SK rS SKrS SKJr  S SKJr   " S S\5      rg)    N)Base)expectc                       \ 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S j5       r
\SS	 j5       rS
rg)	ReduceSum   Nc                     / SQn [         R                  " S/[         R                  S9nSn[        R                  R                  SSS/S/US	9n[         R                  " SS
/SS//SS/SS//SS/SS///[         R                  S9n[         R                  " U[        UR                  5       5      US:H  S9n[        UXA/U/SS9  [         R                  R                  S5        [         R                  R                  SSU 5      R                  [         R                  5      n[         R                  " U[        UR                  5       5      US:H  S9n[        UXA/U/SS9  g )N      r      dtyper   r   dataaxesreducedinputsoutputskeepdimsr   r
                  	   
      r   axisr   'test_reduce_sum_do_not_keepdims_exampler   r   name&test_reduce_sum_do_not_keepdims_randomnparrayint64onnxhelper	make_nodefloat32sumtupletolistr   randomseeduniformastypeshaper   r   noder   r   s         _/var/www/fran/franai/venv/lib/python3.13/site-packages/onnx/backend/test/case/node/reducesum.pyexport_do_not_keepdims ReduceSum.export_do_not_keepdims   sB   xx288,{{$$ 09+PX % 
 xx!fq!fAA/1b'B81DERZZ
 &&E$++-$88q=Q 	<I:		
 			qyy  b%077

C&&E$++-$88q=Q<I9		
    c                     / SQn [         R                  " S/[         R                  S9nSn[        R                  R                  SSS/S/US9n[         R                  " SS	/S
S//SS/SS//SS/SS///[         R                  S9n[         R                  " U[        UR                  5       5      US:H  S9n[        UXA/U/SS9  [         R                  R                  S5        [         R                  R                  SSU 5      R                  [         R                  5      n[         R                  " U[        UR                  5       5      US:H  S9n[        UXA/U/SS9  g )Nr	   r   r   r   r   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r    test_reduce_sum_keepdims_exampler!   r   r#   test_reduce_sum_keepdims_randomr%   r4   s         r7   export_keepdimsReduceSum.export_keepdims2   sB   xx288,{{$$ 09+PX % 
 xx!fq!fAA/1b'B81DERZZ
 &&E$++-$88q=Q 	<I3		
 			qyy  b%077

C&&E$++-$88q=Q<I2		
r:   c                  b   / SQn [         R                  " / [         R                  S9nSn[        R                  R                  SSS/S/US9n[         R                  " SS	/S
S//SS/SS//SS/SS///[         R                  S9n[         R                  " US US:H  S9n[        UXA/U/SS9  [         R                  R                  S5        [         R                  R                  SSU 5      R                  [         R                  5      n[         R                  " US US:H  S9n[        UXA/U/SS9  g )Nr	   r   r   r   r   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r   -test_reduce_sum_default_axes_keepdims_exampler!   r   r#   ,test_reduce_sum_default_axes_keepdims_random)r&   r'   r(   r)   r*   r+   r,   r-   r   r0   r1   r2   r3   r4   s         r7   export_default_axes_keepdims&ReduceSum.export_default_axes_keepdimsW   s*   xx"((+{{$$ 09+PX % 
 xx!fq!fAA/1b'B81DERZZ
 &&D8q=A 	<I@		
 			qyy  b%077

C&&D8q=A<I?		
r:   c                     / SQn [         R                  " S/[         R                  S9nSn[        R                  R                  SSS/S/US	9n[         R                  " SS
/SS//SS/SS//SS/SS///[         R                  S9n[         R                  " U[        UR                  5       5      US:H  S9n[        UXA/U/SS9  [         R                  R                  S5        [         R                  R                  SSU 5      R                  [         R                  5      n[         R                  " U[        UR                  5       5      US:H  S9n[        UXA/U/SS9  g )Nr	   r   r   r   r   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r   .test_reduce_sum_negative_axes_keepdims_exampler!   r   r#   -test_reduce_sum_negative_axes_keepdims_randomr%   r4   s         r7   export_negative_axes_keepdims'ReduceSum.export_negative_axes_keepdimsz   sB   xxBHH-{{$$ 09+PX % 
 xx!fq!fAA/1b'B81DERZZ
 &&E$++-$88q=Q 	<IA		
 			qyy  b%077

C&&E$++-$88q=Q<I@		
r:   c                  X   / SQn Sn[         R                  R                  SSS/S/USS9n[        R                  " SS	/S
S//SS/SS//SS/SS///[        R
                  S9n[        R                  " / [        R                  S9n[        R                  " U5      n[        UX4/U/SS9  [        R                  R                  S5        [        R                  R                  SSU 5      R                  [        R
                  5      n[        R                  " U5      n[        UX4/U/SS9  g )Nr	   r   r   r   r   r   T)r   r   r   noop_with_empty_axesr   r
   r   r   r   r   r   r   r   r   r   r   -test_reduce_sum_empty_axes_input_noop_exampler!   r   r#   rH   )r)   r*   r+   r&   r'   r,   r(   r   r0   r1   r2   r3   )r5   r   r6   r   r   r   s         r7   export_empty_axes_input_noop&ReduceSum.export_empty_axes_input_noop   s   {{$$F#K!% % 
 xx!fq!fAA/1b'B81DERZZ
 xx"((+((4. 	<I@		
 			qyy  b%077

C((4.<I@		
r:   c                     / SQn Sn/ SQn[         R                  R                  SSS/S/US9n[        R                  " / [        R
                  S	9R                  U 5      n[        R                  " S/[        R                  S	9n[        R                  " [        R                  " U[        R
                  S	95      n[        UXE/U/S
S9  g)z-Test case with the reduced-axis of size zero.r   r   r   r   )r   r   r   r   r   r   r   r   r   test_reduce_sum_empty_setr!   N)
r)   r*   r+   r&   r'   r,   reshaper(   zerosr   r5   r   reduced_shaper6   r   r   r   s          r7   export_empty_setReduceSum.export_empty_set   s     !{{$$F#K	 % 
 xx"**-55e<xx288,((288MDE<I,		
r:   c                     / SQn Sn/ SQn[         R                  R                  SSS/S/US9n[        R                  " / [        R
                  S	9R                  U 5      n[        R                  " S
/[        R                  S	9n[        R                  " / [        R
                  S	9R                  U5      n[        UXE/U/SS9  g)z1Test case with the non-reduced-axis of size zero.rQ   r   )r   r   r   r   r   r   r   r   r   r   /test_reduce_sum_empty_set_non_reduced_axis_zeror!   N)	r)   r*   r+   r&   r'   r,   rS   r(   r   rU   s          r7   export_non_reduced_axis_zero&ReduceSum.export_non_reduced_axis_zero   s     !{{$$F#K	 % 
 xx"**-55e<xx288,((2RZZ088G<IB		
r:    )returnN)__name__
__module____qualname____firstlineno__staticmethodr8   r>   rC   rI   rN   rW   r[   __static_attributes__r]   r:   r7   r   r      s    "
 "
H "
 "
H  
  
D "
 "
H $
 $
L 
 
0 
 
r:   r   )numpyr&   r)   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r]   r:   r7   <module>rh      s!   
   , .j
 j
r:   