
    h                     p    S SK r S SKrS rS rS rS rS r " S S5      rS	 r	S
 r
S rS rS rS rS rg)    Nc                      Sn Sn[        S5       Hh  n[        R                  " X5      nS UR                  5        5       n[        R                  " USS9(       d   e[        R                  " USS9(       a  Mh   e   g )Nd   g333333?
   c              3   *   #    U  H	  u  pUv   M     g 7fN .0nds      Z/var/www/html/env/lib/python3.13/site-packages/networkx/algorithms/tests/test_graphical.py	<genexpr>.test_valid_degree_sequence1.<locals>.<genexpr>        (ZTQqZ   egmethodhh)rangenxerdos_renyi_graphdegreeis_graphical)r   piGdegs        r   test_valid_degree_sequence1r      se    AA2Y  &(QXXZ(s4000s40000	     c                      Sn [        S5       Hi  n[        R                  " U S5      nS UR                  5        5       n[        R                  " USS9(       d   e[        R                  " USS9(       a  Mi   e   g )Nr   r      c              3   *   #    U  H	  u  pUv   M     g 7fr   r   r	   s      r   r   .test_valid_degree_sequence2.<locals>.<genexpr>   r   r   r   r   r   )r   r   barabasi_albert_graphr   r   )r   r   r   r   s       r   test_valid_degree_sequence2r&      sb    A2Y$$Q*(QXXZ(s4000s40000	 r    c                  F   [         R                  " [        R                  [        R                  / S5        [         R                  " [        R                  [        R                  S/S5        [         R                  " [        R                  [        R                  S/S5        g )Nfooredr   r   pytestraisesr   NetworkXExceptionr   r   r    r   test_string_inputr.      sZ    
MM"&&UC
MM"&&%$G
MM"&&%$Gr    c                      [         R                  " [        R                  [        R                  S/S5        [         R                  " [        R                  [        R                  S/S5        g )Ng      R@r   r   r*   r   r    r   test_non_integer_inputr0      s>    
MM"&&$F
MM"&&$Fr    c                      [         R                  " S/S5      (       a   e[         R                  " S/S5      (       a   eg )Nr   r   r   r   r   r    r   test_negative_inputr4   $   s7    tT****tT*****r    c                   *    \ rS rSr\S 5       rS rSrg)	TestAtlas)   c                 B    SSK Jq  [        R                  5       U l        g )Nr   )atlas)networkx.generatorsr9   graph_atlas_gGAG)clss    r   setup_classTestAtlas.setup_class*   s     	.%%'r    c                     U R                    HR  nS UR                  5        5       n[        R                  " USS9(       d   e[        R                  " USS9(       a  MR   e   g )Nc              3   *   #    U  H	  u  pUv   M     g 7fr   r   r	   s      r   r   'TestAtlas.test_atlas.<locals>.<genexpr>3   s     01r   r   r   r   )r<   r   r   r   )selfgraphr   s      r   
test_atlasTestAtlas.test_atlas1   sK    XXE00C??3t444??3t4444 r    r   N)__name__
__module____qualname____firstlineno__classmethodr>   rE   __static_attributes__r   r    r   r6   r6   )   s    ( (5r    r6   c                  l   / SQn [         R                  " U SS9(       d   e[         R                  " U SS9(       d   e/ SQn [         R                  " U SS9(       d   e[         R                  " U SS9(       d   e/ SQn [         R                  " U SS9(       d   e[         R                  " U SS9(       d   eg )N      rP   rP   rP      rQ   rQ   r"   r"   r"   r   r   r   )r   rP   rP   rP   rP   rQ   rQ   rQ   rQ   rQ   rQ   
r"   r"   r"   r"   r"   rQ   rQ   rQ   rP      r3   zs    r   test_small_graph_truerV   8   s    )A??1T***??1T****A??1T***??1T***&A??1T***??1T***r    c                  l   / SQn [         R                  " U SS9(       a   e[         R                  " U SS9(       a   e/ SQn [         R                  " U SS9(       a   e[         R                  " U SS9(       a   e/ SQn [         R                  " U SS9(       a   e[         R                  " U SS9(       a   eg )N  rP   rP   rP   rP   rQ   rQ   rQ   r"   r"   r"   r   r   r      rO   rS   rS   rQ   r"   r"   r"   r"   r"   r"   r"   r"   r"   rQ   rQ   rQ   rP   rS   r3   rT   s    r   test_small_graph_falser]   D   s    ,Aq...q... Aq...q...)Aq...q....r    c                     Su  pSU-  n[        U5       Hl  n[        R                  " XUS-   -  S S5      nS UR                  5        5       nS UR	                  5        5       n[        R
                  " XV5      (       a  Ml   e   g )N)r   r   g      ?r"   Tc              3   *   #    U  H	  u  pUv   M     g 7fr   r   r	   s      r   r   0test_directed_degree_sequence.<locals>.<genexpr>V   s     +]TQq]r   c              3   *   #    U  H	  u  pUv   M     g 7fr   r   r	   s      r   r   r`   W   s     -ndanr   )r   r   r   	in_degree
out_degreeis_digraphical)r   rr   r   r   dindouts          r   test_directed_degree_sequencerh   P   ss    DAaA1X  QKt<+Q[[]+-alln-  ++++	 r    c                     / SQn / SQn[         R                  " X5      (       d   e/ SQn / SQn[         R                  " X5      (       a   e/ SQn / SQn[         R                  " X5      (       d   e/ SQn[         R                  " X5      (       a   e/ SQn[         R                  " X5      (       a   e/ S	Q=p[         R                  " X5      (       a   e/ S
Q=p[         R                  " X5      (       a   eg )NrN   )rP   rP   rP   rP   rP   rQ   rQ   rQ   rQ   rQ   r"   rX   )
g   f   rk   rk   rk   rk   rk   rk   rk   rk   rR   )
rQ   rQ   rQ   rQ   rQ   rQ   rQ   rQ   r"   r"   )rQ   rQ   rQ   rQ   rQ   rQ   rQ   rQ   r"   r"   r"   )rQ   rQ   rQ   rQ   rQ   rQ   rQ   r"   r"   rS   r"   r"   皙?r"   r"   r"   rerr"   )r   rd   )rg   rf   s     r   test_small_directed_sequencesrq   [   s    ,D
+CS''''/D
<C  ++++)D
(CS''''
+C  ++++
,C  ++++C  ++++!!C  +++++r    c                     / SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       d   e/ SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       a   eg )N
rY   rP   rP   rP   rP   rQ   rQ   rQ   r"   r"   rZ   )r[   rO   rS   rQ   r"   r"   r"   r\   rm   ro   )r   is_multigraphicalseqs    r   test_multi_sequencerx   t   s    
+C##C((((
"C$$$$
#C##C((((
+C##C((((
C##C((((
C##C(((((r    c                  N   / SQn [         R                  " U 5      (       d   e/ SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       a   e/ SQn [         R                  " U 5      (       a   eg )Nrs   rX   )
rY   rP   rP   rP   rP   rQ   rQ   rl   r"   r"   rm   ro   )r   is_pseudographicalrv   s    r   test_pseudo_sequencer{      s    
+C  %%%%
.C$$S))))
,C$$S))))
C$$S))))
C$$S)))))r    c                     [         R                  " S5      n U R                  / SQU R                  S9n[        R
                  " US5      (       d   e[        R
                  " US5      (       d   eU R                  / SQU R                  S9n[        R
                  " US5      (       d   e[        R
                  " US5      (       d   eU R                  / SQU R                  S9n[         R                  " [        R                  [        R
                  US5        [         R                  " [        R                  [        R
                  US5        g )Nnumpy)r"   rQ   rQ   rQ   r"   )dtyper   r   )rn   rQ   rQ   rQ   r"   )	r+   importorskiparrayint64r   r   float64r,   r-   )npdss     r   test_numpy_degree_sequencer      s    			W	%B	/	2B??2t$$$$??2t$$$$	/	4B??2t$$$$??2t$$$$	#2::	6B
MM"&&TB
MM"&&TBr    )r+   networkxr   r   r&   r.   r0   r4   r6   rV   r]   rh   rq   rx   r{   r   r   r    r   <module>r      sT     11HG
+
5 5	+	/,,2)(*"
Cr    