
    (ph                     "   S r SSKrSSKrSSKJrJr  SSKJrJ	r	J
r
Jr  SSKJrJrJrJr  SSKJr  S r\\\
\	/r\\	/r\R*                  R-                  S\5       " S	 S
5      5       r\R*                  R-                  S\5       " S S5      5       rg)z3Test of min-max 1D features of sparse array classes    N)assert_equalassert_array_equal)	coo_array	csr_array	csc_array	bsr_array)
coo_matrix
csr_matrix
csc_matrix
bsr_matrix)isscalarlikec                     [        U [        R                  5      (       d  [        U 5      (       a  U $ U R	                  5       $ )N)
isinstancenpndarrayr   toarray)as    S/var/www/html/venv/lib/python3.13/site-packages/scipy/sparse/tests/test_minmax1d.pyr   r      s,    !RZZ  LOO99;    	spcreatorc                   ,    \ rS rSrS rS rS rS rSrg)Test_MinMaxMixin1D   c                    [         R                  " S5      nU" U5      n[        UR                  5       S5        [        UR	                  5       S5        [        U* R                  5       S5        [        U* R	                  5       S5        g )N   r      )r   aranger   minmax)selfr   DXs       r   test_minmaxTest_MinMaxMixin1D.test_minmax   s\    IIaLaLQUUWa QUUWa qbXXZ$qbXXZ#r   c           	      .   [         R                  " S5      nU" U5      nS Hc  n[        [        UR	                  US95      UR	                  USS95        [        [        UR                  US95      UR                  USS95        Me     S He  n[        R                  " [        SS9   UR                  US9  S S S 5        [        R                  " [        SS9   UR	                  US9  S S S 5        Mg     g ! , (       d  f       ND= f! , (       d  f       M  = f)	N2   )r   axisTr*   keepdims)   zaxis out of rangematch)	r   r   r   r   r    r   pytestraises
ValueError)r!   r   r"   r#   r*   s        r   test_minmax_axis#Test_MinMaxMixin1D.test_minmax_axis#   s    IIbMaLD4()155dT5+J 4()155dT5+J	  Dz1DE4  Fz1DE4  FE EEEEs   &C4D4
D	
D	c                    [         R                  " / SQ5      nU" U5      n[        [         R                  " U5      [         R                  " U5      5        [        [         R                  " U5      [         R                  " U5      5        g )N)r   r.      )r   arrayr   r   r    )r!   r   datdatsps       r   test_numpy_minmax$Test_MinMaxMixin1D.test_numpy_minmax4   sM    hhy!#266%="&&+6266%="&&+6r   c           	         [         R                  " / SQ5      n[         R                  " / SQ5      n[         R                  " / SQ5      n[         R                  " / SQ5      n[         R                  " / SQ5      nX#XEU4 H  nU" U5      n[        UR                  5       [         R                  " U5      5        [        UR	                  5       [         R                  " U5      5        [        UR                  SS9[         R                  " USS95        [        UR	                  SS9[         R                  " USS95        M     [         R
                  " S5      n	S	 Hm  n
U" U	5      n[        R                  " [        S
S9   UR	                  U
S9  S S S 5        [        R                  " [        S
S9   UR                  U
S9  S S S 5        Mo     g ! , (       d  f       ND= f! , (       d  f       M  = f)N)r(   r   r7      r   r   r(   r-   )r(   r-   r   )r.   r7   r>   r   )r.   r7   r   r   r   r)   )r   )Nr   zto an empty matrixr/   )	r   r8   r   argmaxargminemptyr1   r2   r3   )r!   r   D1D2D3D4D5r"   matD6r*   s              r   test_argmaxTest_MinMaxMixin1D.test_argmax;   sL   XXm$XXn%XX&'XXl#XXl#""%AA,Cryy|4ryy|4+RYYqq-AB+RYYqq-AB & XXd^DB-Cz1EF


% Gz1EF


% GF	 FFFFs   =G.G
G	
G+	 N)	__name__
__module____qualname____firstlineno__r$   r4   r;   rK   __static_attributes__rM   r   r   r   r      s    $!"7&r   r   c                       \ rS rSrS rSrg)Test_ShapeMinMax2DWithAxisU   c                    [         R                  " / SQ/ SQ/ SQ/5      nU" U5      nUR                  [         R                  4UR                  [         R                  4UR                  [         R                  4UR
                  [         R
                  44 H]  u  pES HR  u  pg[        [        U" US95      U" X&S95        [        U" US9R                  U5        U" US9R                  S:X  a  MR   e   M_     UR                  UR                  4 H1  nS H(  n[        U" US9[         R                  5      (       a  M(   e   M3     [        [        [         ["        S.nXR                     " U5      n	U	R                  [         R                  4U	R                  [         R                  4U	R                  [         R                  4U	R
                  [         R
                  44 H^  u  pS	 HS  u  pg[        [        U
" US95      U" X&S
S95        [        U
" US9R                  U5        U
" US9R                  S:X  a  MS   e   M`     U	R                  U	R                  4 H1  nS H(  n[        U" US9[         R                  5      (       a  M(   e   M3     g )N)r(   r   r   r>   r?   )r   r   r.   r7   ))r   )r   )r.   )r>   r)   coo)r   r.   )rW   csrcscbsr))r   )r.   r   )r.   )r>   r.   Tr+   )r   r8   r   r    nanminnanmaxr   r   shapeformatrB   rA   r   r   r	   r
   r   r   )r!   r   r9   r:   spminmaxnpminmaxaxresult_shape
spmat_formdatspmspmnpms               r   r$   &Test_ShapeMinMax2DWithAxis.test_minmaxW   s   hh~|DE# YYYY\\299%\\299%	%
 X %; WX2%67#9OPX2.44lCR(//5888 %;%
 u||4H!("3RZZ@@@@  5 	

 LL)#. ZZ ZZ ]]BII&]]BII&	
HC %? WSb\2Ct4TUSb\//>|**e333 %?
  6H!("3RZZ@@@@  7r   rM   N)rN   rO   rP   rQ   r$   rR   rM   r   r   rT   rT   U   s    )Ar   rT   )__doc__r1   numpyr   numpy.testingr   r   scipy.sparser   r   r   r   r	   r
   r   r   scipy.sparse._sputilsr   r   formats_for_minmax formats_for_minmax_supporting_1dmarkparametrizer   rT   rM   r   r   <module>rq      s    9   : C C G G .  IyA $-y#9   &FG9& 9& H9&x &89*A *A :*Ar   