
    Cpj$	                     f    S SK rS SKrS SKJr  S SKJr  S SKJrJ	r	J
r
  S rS rS r " S S	5      rg)
    N)assert_array_almost_equal)	csr_array)csgraph_from_densecsgraph_to_densereconstruct_pathc                     [         R                  R                  S5        [         R                  R                  S5      n U S:  nU S:  nS[         R                  [         R                  4 HL  nX0U'   [         R
                  " SS9   [        U SS9nS S S 5        SX'   [        U WR                  5       5        MN     [         R                  [         R                  4 HP  nSX'   X0U'   [         R
                  " SS9   [        U SS9nS S S 5        SX'   [        U WR                  5       5        MR     g ! , (       d  f       N= f! , (       d  f       NB= f)	N  
   r   g?皙?r   ignore)invalid)
null_value)	nprandomseednaninferrstater   r   toarray)G
some_nulls	all_nullsr   G_csrs        g/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/scipy/sparse/csgraph/tests/test_conversions.pytest_csgraph_from_denser      s    IINN4
		"Ac'JSI"&&"&&)
!)[[*&qQ7E + !!U]]_5 * vvrvv&
"*[[*&qQ7E + !!U]]_5 ' +* +*s   D/9E /
D=	 
E	c                  J   [         R                  R                  S5        [         R                  R                  S5      n U S:  n[         R                  X'   [	        U 5      nSS[         R                  * [         R                  4 H  nX0U'   [        U [        X#5      5        M     g )Nr	   r
   r   r   r   )r   r   r   r   r   r   r   )r   nullsr   r   s       r   test_csgraph_to_denser       sx    IINN4
		"AWEvvAHq!E"rvvgrvv.
%!!%5e%HI /    c                     [         R                  R                  S5        [         R                  R                  S5      n [        U 5      nUR                  SS S2   UR                  S S S2'   UR                  5       n[        US S 2SS S24   U S S 2S S S24   U S S 2SS S24   -   5        [        U5      n[        US S 2SS S24   [         R                  " U S S 2S S S24   U S S 2SS S24   5      5        g )Nr	   r
         )	r   r   r   r   indicesr   r   r   minimum)XXcsrXdenses      r   test_multiple_edgesr)   -   s    IINN4
		"AQ<D QTT*DLL1 \\^FfQ1Wo3Q3i!Aqt!tG*46 d#FfQ1Wo jj1cc6AaAgJ?Ar    c                       \ rS rSrS rSrg)TestReconstructPathA   c                 V   / SQn/ SQn/ SQn[        X1U44S[        R                  S9n[        R                  " [        R                  [        R                  [        R                  /5      n[
        R                  " [        SS9   [        XE5        S S S 5        g ! , (       d  f       g = f)N)r   r"   r"      r.   )r   r#   r.   r"      )	   ii      )   r3   )shapedtypeintegral)match)	r   r   int64arrayr   pytestraises
ValueErrorr   )selfrow_indicescol_indicesdatamatrixpredecessorss         r   test_gh23577 TestReconstructPath.test_gh23577B   sq    %% D"<=V!#+xx 89]]:Z8V2 988s   B
B( N)__name__
__module____qualname____firstlineno__rC   __static_attributes__rE   r    r   r+   r+   A   s    3r    r+   )numpyr   r:   numpy.testingr   scipy.sparser   scipy.sparse.csgraphr   r   r   r   r   r)   r+   rE   r    r   <module>rO      s2      3 " W W60
JA(	3 	3r    