
    9 jZ                     `    S SK rS rS rS rS rS rS rS rS	 r	S
 r
S rS rS rS rS rg)    Nc                  v    [         R                  " [         R                  " S5      5      [        S5      :X  d   eg )N   inf)nxwiener_indexempty_graphfloat     v/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/networkx/algorithms/tests/test_wiener.py'test_wiener_index_of_disconnected_graphr      s&    ??2>>!,-u===r   c                      [         R                  " S5      n [         R                  " U 5      nS[         R                  " U 5      -  [         R                  " U5      :X  d   eg )N   r   )r   complete_graphDiGraphr   )GHs     r   #test_wiener_index_of_directed_graphr      sD    
!A


1A""rq'9999r   c                  |    Sn [         R                  " U 5      n[         R                  " U5      X S-
  -  S-  :X  d   eg )N
      r   )r   r   r   nr   s     r   #test_wiener_index_of_complete_graphr      s8    
A
!A??1!1u+/222r   c            	         ^ Sm[         R                  " T5      n S[        U4S j[        STS-  S-   5       5       5      -  n[         R                  " U 5      nX:X  d   eg )N	   r   c              3   2   >#    U  H  oTU-
  -  v   M     g 7f)Nr
   ).0ir   s     r   	<genexpr>2test_wiener_index_of_path_graph.<locals>.<genexpr>-   s     C,BqAE{,Bs   r   )r   
path_graphsumranger   )r   expectedactualr   s      @r   test_wiener_index_of_path_graphr'      sV    . 	
A
aA3CE!a1f\,BCCCH__QFr   c            	      R   Sn [         R                  " 5       nUR                  [        [	        SU S-   5      5      5        [        S5      nUR                  SS5        UR                  SS5        [         R                  " U5      n[         R                  " U5      nX#:X  d   eX$:X  d   eg )N   r   r   r   r   )	r   Graphadd_nodes_fromlistr$   r	   add_edgeschultz_indexgutman_index)r   r   r%   actual_1actual_2s        r   3test_schultz_and_gutman_index_of_disconnected_graphr2   2   s    	A

AT%1q5/*+U|HJJq!JJq!"Hq!Hr   c                  D   Sn Sn[         R                  " X5      nX-  X-   -  SU -  U S-
  -  U-  -   SU-  US-
  -  U -  -   n[         R                  " U5      nX-  X-  -  X S-
  -  U-  U-  -   XS-
  -  U -  U -  -   n[         R                  " U5      nX4:X  d   eXV:X  d   eg )Nr   r   r   r   complete_bipartite_graphr.   r/   r   mcbg
expected_1r0   
expected_2r1   s          r   ;test_schultz_and_gutman_index_of_complete_bipartite_graph_1r;   B       	A	A

%
%a
+C!%1q5AE?Q#66Q!a%19LLJ$H!%1A;?Q#66!eq19LLJs#H!!!!!!r   c                  D   Sn Sn[         R                  " X5      nX-  X-   -  SU -  U S-
  -  U-  -   SU-  US-
  -  U -  -   n[         R                  " U5      nX-  X-  -  X S-
  -  U-  U-  -   XS-
  -  U -  U -  -   n[         R                  " U5      nX4:X  d   eXV:X  d   eg )Nr      r   r4   r6   s          r   ;test_schultz_and_gutman_index_of_complete_bipartite_graph_2r?   Q   r<   r   c                      Sn [         R                  " U 5      nX S-
  -  U S-
  -  n[         R                  " U5      nX#:X  d   eX S-
  -  U S-
  -  U S-
  -  S-  n[         R                  " U5      nXE:X  d   eg )Nr>   r   r   )r   r   r.   r/   )r   cgr9   r0   r:   r1   s         r   /test_schultz_and_gutman_index_of_complete_graphrB   `   s    	A			1	B!eA&J#H!!!!eA&!a%014Jr"H!!!r   c                      Sn SU -  S-   n[         R                  " U5      nSU-  U -  U S-   -  n[         R                  " U5      nSU-  U -  U S-   -  n[         R                  " U5      nX4:X  d   eXV:X  d   eg )Nr>   r   r   )r   cycle_graphr.   r/   )kr   ocgr9   r0   r:   r1   s          r   0test_schultz_and_gutman_index_of_odd_cycle_graphrG   o   s    	A	A	A
..
CQa!e$J$HQa!e$Js#H!!!!!!r   c                  v    Sn [         R                  " U 5      n[         R                  " U5      X S-
  -  :X  d   eg )Nr>   r   )r   r   hyper_wiener_indexr   s     r   #test_hyper_wiener_of_complete_graphrJ   ~   s8     	
A
!A  #qE{222r   c                  h    [         R                  " S5      n [         R                  " U 5      S:X  d   eg )Nr)   g      >@)r   r"   rI   r   s    r   test_hyper_wiener_of_path_graphrM      s)    
aA  #t+++r   c                  h    [         R                  " S5      n [         R                  " U 5      S:X  d   eg )Nr)         4@)r   rD   rI   rL   s    r    test_hyper_wiener_of_cycle_graphrP      s)    
qA  #t+++r   c                  ~    [         R                  " SS/5      n [         R                  " U 5      [        S5      :X  d   eg )Nr   r   )r   r   r   )r   r*   rI   r	   rL   s    r   'test_hyper_wiener_of_disconnected_graphrS      s2    
&&!"A  #uU|333r   c                      [         R                  " S5      n SU R                  S   S'   [         R                  " U SS9S:X  d   eg )Nr   r   rR   weight)rU   rO   )r   r"   edgesrI   rL   s    r   #test_hyper_wiener_of_weighted_graphrW      s=    
aAAGGDM(  84<<<r   )networkxr   r   r   r   r'   r2   r;   r?   rB   rG   rJ   rM   rP   rS   rW   r
   r   r   <module>rY      sN    >:3<  """"
3,
,
4
=r   