
    fi                     D    d dl Zd Zd Zd Zd Zd Zd Zd Zd	 Z	d
 Z
dS )    Nc                  x    t          j        t          j        d                    t          d          k    sJ d S )N   inf)nxwiener_indexempty_graphfloat     }/var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/networkx/algorithms/tests/test_wiener.py'test_wiener_index_of_disconnected_graphr      s3    ?2>!,,--u======r   c                      t          j        d          } t          j        |           }dt          j        |           z  t          j        |          k    sJ d S )N   r   )r   complete_graphDiGraphr   )GHs     r   #test_wiener_index_of_directed_graphr      sO    
!A

1A"""rq'9'9999999r   c                  x    d} t          j        |           }t          j        |          | | dz
  z  dz  k    sJ d S )N
      r   )r   r   r   )nr   s     r   #test_wiener_index_of_complete_graphr      sD    
A
!A?1!q1u+/222222r   c            	          dt          j                  } dt          fdt          ddz  dz             D                       z  }t          j        |           }||k    sJ d S )N	   r   c              3   (   K   | ]}||z
  z  V  d S )Nr
   ).0ir   s     r   	<genexpr>z2test_wiener_index_of_path_graph.<locals>.<genexpr>-   s+      CCqqAE{CCCCCCr   r   )r   
path_graphsumranger   )r   expectedactualr   s      @r   test_wiener_index_of_path_graphr%      sx    . 	
A
aA3CCCCE!a1f\,B,BCCCCCCH_QFvr   c            	      |   d} t          j                    }|                    t          t	          d| dz                                  t          d          }|                    dd           |                    dd           t          j        |          }t          j        |          }||k    sJ ||k    sJ d S )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_graphr0   2   s    	A


AT%1q5//**+++U||HJJq!JJq!""Hq!!Hxxr   c                  L   d} d}t          j        | |          }| |z  | |z   z  d| z  | dz
  z  |z  z   d|z  |dz
  z  | z  z   }t          j        |          }| |z  | |z  z  | | dz
  z  |z  |z  z   ||dz
  z  | z  | z  z   }t          j        |          }||k    sJ ||k    sJ d S )Nr   r   r   r   complete_bipartite_graphr,   r-   r   mcbg
expected_1r.   
expected_2r/   s          r   ;test_schultz_and_gutman_index_of_complete_bipartite_graph_1r9   B       	A	A

%a
+
+CQ!a%1q5AE?Q#66Q!a%19LLJ$$HQ!a%1A;?Q#66a!eq19LLJs##H!!!!!!!!!!r   c                  L   d} d}t          j        | |          }| |z  | |z   z  d| z  | dz
  z  |z  z   d|z  |dz
  z  | z  z   }t          j        |          }| |z  | |z  z  | | dz
  z  |z  |z  z   ||dz
  z  | z  | z  z   }t          j        |          }||k    sJ ||k    sJ d S )Nr      r   r2   r4   s          r   ;test_schultz_and_gutman_index_of_complete_bipartite_graph_2r=   Q   r:   r   c                      d} t          j        |           }| | dz
  z  | dz
  z  }t          j        |          }||k    sJ | | dz
  z  | dz
  z  | dz
  z  dz  }t          j        |          }||k    sJ d S )Nr<   r   r   )r   r   r,   r-   )r   cgr7   r.   r8   r/   s         r   /test_schultz_and_gutman_index_of_complete_graphr@   `   s    	A		1		Ba!eA&J##H!!!!a!eA&!a%014Jr""H!!!!!!r   c                      d} d| z  dz   }t          j        |          }d|z  | z  | dz   z  }t          j        |          }d|z  | z  | dz   z  }t          j        |          }||k    sJ ||k    sJ d S )Nr<   r   r   )r   cycle_graphr,   r-   )kr   ocgr7   r.   r8   r/   s          r   0test_schultz_and_gutman_index_of_odd_cycle_graphrE   o   s    	A	A	A
.

CQa!e$J$$HQa!e$Js##H!!!!!!!!!!r   )networkxr   r   r   r   r%   r0   r9   r=   r@   rE   r
   r   r   <module>rG      s       > > >: : :3 3 3  <      " " "" " "" " "" " " " "r   