o
    ִi                     @   sT   d dl Zdd Zdd Zdd Zdd	 Zd
d Zdd Zdd Zdd Z	dd Z
dS )    Nc                   C   s    t t dtdksJ d S )N   inf)nxwiener_indexempty_graphfloat r   r   X/home/kuhnn/.local/lib/python3.10/site-packages/networkx/algorithms/tests/test_wiener.py'test_wiener_index_of_disconnected_graph   s    r
   c                  C   s4   t d} t | }dt |  t |ksJ d S )N   r   )r   complete_graphDiGraphr   )GHr   r   r	   #test_wiener_index_of_directed_graph   s   

 r   c                  C   s0   d} t | }t || | d  d ksJ d S )N
      r   )r   r   r   )nr   r   r   r	   #test_wiener_index_of_complete_graph   s   
"r   c                     sP   d t  } dt fddtd d d D  }t | }||ks&J d S )N	   r   c                 3   s    | ]	}| |  V  qd S )Nr   ).0ir   r   r	   	<genexpr>-   s    z2test_wiener_index_of_path_graph.<locals>.<genexpr>r   )r   
path_graphsumranger   )r   expectedactualr   r   r	   test_wiener_index_of_path_graph   s
   
(
r   c                  C   st   d} t  }|ttd| d  td}|dd |dd t |}t |}||ks2J ||ks8J 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_2r   r   r	   3test_schultz_and_gutman_index_of_disconnected_graph2   s   

r)   c                  C   s   d} d}t | |}| | | |  d|  | d  |  d| |d  |   }t |}| | | |  | | d  | |  ||d  |  |   }t |}||ksRJ ||ksXJ d S )Nr   r   r   r   complete_bipartite_graphr%   r&   r   mcbg
expected_1r'   
expected_2r(   r   r   r	   ;test_schultz_and_gutman_index_of_complete_bipartite_graph_1B      8
8
r1   c                  C   s   d} d}t | |}| | | |  d|  | d  |  d| |d  |   }t |}| | | |  | | d  | |  ||d  |  |   }t |}||ksRJ ||ksXJ d S )Nr      r   r*   r,   r   r   r	   ;test_schultz_and_gutman_index_of_complete_bipartite_graph_2Q   r2   r4   c                  C   sr   d} t | }| | d  | d  }t |}||ksJ | | d  | d  | d  d }t |}||ks7J d S )Nr3   r   r   )r   r   r%   r&   )r   cgr/   r'   r0   r(   r   r   r	   /test_schultz_and_gutman_index_of_complete_graph`   s   

 
r6   c                  C   sr   d} d|  d }t |}d| |  | d  }t |}d| |  | d  }t |}||ks1J ||ks7J d S )Nr3   r   r   )r   cycle_graphr%   r&   )kr   ocgr/   r'   r0   r(   r   r   r	   0test_schultz_and_gutman_index_of_odd_cycle_grapho   s   


r:   )networkxr   r
   r   r   r   r)   r1   r4   r6   r:   r   r   r   r	   <module>   s    