
    ިsg                     ,    d Z ddlZddlZ G d d      Zy)z@Unit tests for the :mod:`networkx.generators.stochastic` module.    Nc                   :    e Zd ZdZd Zd Zd Zd Zd Zd Z	d Z
y	)
TestStochasticGraphz?Unit tests for the :func:`~networkx.stochastic_graph` function.c                 &   t        j                         }|j                  dd       |j                  dd       t        j                  |      }t        j                  ||      sJ t        |j                  d            ddddifddddifgk(  sJ y )Nr         Tdataweight      ?)nxDiGraphadd_edgestochastic_graphis_isomorphicsortededgesselfGSs      \/var/www/html/venv/lib/python3.12/site-packages/networkx/generators/tests/test_stochastic.pytest_default_weightsz(TestStochasticGraph.test_default_weights   s    JJL	

1a	

1a"1%%%agg4g()Hc?#Hc?#.
 
 	
 
    c                    t        j                         }|j                  ddd       |j                  ddd       t        j                  |d       t	        |j                  d            ddd	d
ifddd	d
ifgk(  sJ y)z<Tests for an in-place reweighting of the edges of the graph.r   r   r
   r   F)copyTr   r
   r   Nr   r   r   r   r   r   )r   r   s     r   test_in_placez!TestStochasticGraph.test_in_place   s    JJL	

1a
"	

1a
"
AE*agg4g()Hc?#Hc?#.
 
 	
 
r   c                     t        j                         }|j                  ddd       |j                  ddd       t        j                  |      }t	        |j                  d            ddddifddddifgk(  sJ y )	Nr   r   r   r   Tr   r
   r   r   r   s      r   test_arbitrary_weightsz*TestStochasticGraph.test_arbitrary_weights!   s    JJL	

1a
"	

1a
""agg4g()Hc?#Hc?#.
 
 	
 
r   c                     t        j                         }|j                  g d       t        j                  |      }ddi}t	        |j                  d            dd|fdd|fdd|fdd|fgk(  sJ y )	N)r   r   r"   r   r   r#   r
   g      ?Tr   r   r   r   )r   MultiDiGraphadd_edges_fromr   r   r   )r   r   r   ds       r   test_multidigraphz%TestStochasticGraph.test_multidigraph+   s    OO	9:"tagg4g()1I1I1I1I	.
 
 	
 
r   c                     t        j                         }|j                  ddd       |j                  ddd       t        j                  |      }t	        |j                  d            ddddifddddifgk(  sJ y)	z3Smoke test: ensure ZeroDivisionError is not raised.r   r   r   r   Tr   r
   Nr   r   s      r   test_zero_weightsz%TestStochasticGraph.test_zero_weights7   s    JJL	

1a
"	

1a
""agg4g()Ha=!Ha=!.
 
 	
 
r   c                     t        j                  t        j                        5  t        j                  t        j
                                d d d        y # 1 sw Y   y xY wN)pytestraisesr   NetworkXNotImplementedr   Graphr   s    r   test_graph_disallowedz)TestStochasticGraph.test_graph_disallowedB   s=    ]]2445 	,
+	, 	, 	,   (AAc                     t        j                  t        j                        5  t        j                  t        j
                                d d d        y # 1 sw Y   y xY wr+   )r,   r-   r   r.   r   
MultiGraphr0   s    r   test_multigraph_disallowedz.TestStochasticGraph.test_multigraph_disallowedF   s=    ]]2445 	10	1 	1 	1r2   N)__name__
__module____qualname____doc__r   r   r    r'   r)   r1   r5    r   r   r   r      s(    I	
	



	
,1r   r   )r9   r,   networkxr   r   r:   r   r   <module>r<      s    F  @1 @1r   