
    h!                     P   S SK r S SKJr  S SKrS SKrS SKJrJrJrJ	r	J
r
JrJrJrJrJrJrJr  S SKJrJr  Sr1 SkrSSS	1 S
kSS/4SSSS.SSS.S/r\R0                  R3                  SS/ S/SS//5      \R0                  R3                  S\\\/5      S 5       5       rS rS r " S S5      rS rS  rS! r S" r!S# r"S$ r#\R0                  R3                  S%\$S4\%S4\&S&4\'S445      S' 5       r(\R0                  R3                  S(S) \)" S	5       5       \*" / S*Q5      45      S+ 5       r+g),    N)copy)PythonRandomInterfacePythonRandomViaNumpyBitsarbitrary_elementcreate_py_random_statecreate_random_statedict_to_numpy_arraydiscrete_sequenceflattengroupsmake_list_of_intspairwisepowerlaw_sequence)_dict_to_numpy_array1_dict_to_numpy_array2)      )      ))      )   )   )	   
      )                           >   r   r   r   r   r   r   )r   r   r    )r!   r"   r#   r$   r   r   r   r   r   r%   r&   r   r   r   >   r   r   r   r   r   r   foobarbaz)r   r   )r   r   qweasd)r   r"   )r#   )r$   19r&   resultexisting	existing1	existing2nestedc                    Uc  [        X5      n[        U5      S:X  d   eOH[        U5      n[        U5      n[        X5      n[        U5      [        U5      s=:X  a
  SU-   :X  d   e   e[        [	        U5      [
        5      (       d   eg )Nr&   )r   lenr   
issubclasstypetuple)r5   r1   val_result	nexistings        P/var/www/html/env/lib/python3.13/site-packages/networkx/utils/tests/test_misc.pytest_flattenr?   /   s{     ~f%3x2~~v,L	f&3x3w<92	>99999d3i''''    c                  >   / SQn [        U 5      U L d   e[        U 5      U :X  d   e[        [        U 5      S   5      [        L d   e[        R                  " [
        R                  [         / SQ5        [        R                  " [
        R                  [         / SQ5        g )N)r   r   g      @*   r   )r   r   r   kermit)r   r   g@)r   r9   intpytestraisesnxNetworkXError)mylists    r>   test_make_list_of_intsrK   >   sz     FV$...V$...!&)!,-444
MM"""$57JK
MM"""$5{Cr@   c                  0    [        SSS9n [        S/ SQS9n g )Nr&   g      @)exponent)r   r   r   r   r   r   r   r   r   r   r   )distribution)r   r
   )zs    r>   test_random_number_distributionrP   G   s    "s+A"+LMAr@   c                   B    \ rS rSr\S 5       rS rS rS rS r	S r
Srg	)
TestNumpyArrayM   c                 0    [         R                  " S5      qg )Nnumpy)rF   importorskipnp)clss    r>   setup_classTestNumpyArray.setup_classN   s       )r@   c                    [         R                  / SQ[         R                  S9n[         R                  / SQ5      n[         R                  / SQ5      n[        [	        U5      5      [
        :X  d   e[	        U5      [        U5      :X  d   e[	        U5      n[        US   5      [        :X  d   e[        R                  " [        R                  [        U5        g )Nr   r   r   )dtype)g      ?r   r   )g?r   r   r   )rW   arrayint64r9   r   listrE   rF   rG   rH   rI   )selfabcBs        r>   test_numpy_to_list_of_ints)TestNumpyArray.test_numpy_to_list_of_intsS   s    HHYbhhH/HH[!HH[!%a()T111 #tAw...a AaDzS   b&&(91=r@   c                    SSS.n[        USSS.S9n[        R                  R                  U[        R	                  SS/5      5        [        USSS.S9n[        R                  R                  U[        R	                  SS/5      5        [        U5      n[        R                  R                  UR                  5       S5        g )Nr   r   rb   rc   r   mapping)rc   rb   r   )r   rW   testingassert_allcloser^   sum)ra   drb   s      r>   test__dict_to_numpy_array1)TestNumpyArray.test__dict_to_numpy_array1]   s    !!!11-=>


""1bhh1v&67!!11-=>


""1bhh1v&67!!$


""1557A.r@   c                    SSS.SSS.S.nSSS.n[        XS9n[        R                  R                  U[        R	                  SS/SS//5      5        [        U5      n[        R                  R                  UR                  5       S5        g 	Nr   r   ri   r   r&   r   rj   !   )r   rW   rl   rm   r^   rn   ra   ro   rk   rb   s       r>   test__dict_to_numpy_array2)TestNumpyArray.test__dict_to_numpy_array2g   sx    "r);<"!!5


""1bhhR1a&/A&BC!!$


""1557B/r@   c                    SSS.SSS.S.nSSS.n[        XS9n[        R                  R                  U[        R	                  SS/SS//5      5        SSS.n[        XS9n[        R                  R                  U[        R	                  SS/SS//5      5        [        U5      n[        R                  R                  UR                  5       S5        g rs   )r	   rW   rl   rm   r^   r   rn   ru   s       r>   test_dict_to_numpy_array_a)TestNumpyArray.test_dict_to_numpy_array_aq   s    "r);<"3


""1bhhAR/A&BC"3


""1bhhR1a&/A&BC!!$


""1557B/r@   c                    SSS.nSSS.n[        XS9n[        R                  R                  U[        R	                  SS/5      5        [        U5      n[        R                  R                  UR                  5       S5        g )Nr   r   ri   r   rj   r   )r	   rW   rl   rm   r^   r   rn   ru   s       r>   test_dict_to_numpy_array_b)TestNumpyArray.test_dict_to_numpy_array_b   se    !"3


""1bhh1v&67!!$


""1557A.r@    N)__name__
__module____qualname____firstlineno__classmethodrY   rf   rp   rv   ry   r|   __static_attributes__r~   r@   r>   rR   rR   M   s-    * *>/00/r@   rR   c                  l   [        S5      n / SQnUS/-   n[        [        U 5      5      U:X  d   e[        [        [        U 5      5      5      U:X  d   e[        [        U SS95      U:X  d   e[        S5      n[        [        U5      5      / :X  d   e[        S5      n[        [        USS95      / :X  d   eg )Nr   ))r   r   )r   r   )r   r   )r   r   T)cyclicr~   )ranger`   r   iter)nodes
node_pairsnode_pairs_cycle
empty_iters       r>   test_pairwiser      s    !HE)J!VH, J...e%&*444t,-1AAAAbJ$%+++bJD12b888r@   c                      [        [        S/ SQ5      5      n [        U 5      nSS1SS1S1S.nX:X  d   e0 [        0 5      :X  d   eg )	Nabcde)r   r   r   r   r   rb   rc   rd   ro   e)r   r   r   )dictzipr   )many_to_oneactualexpecteds      r>   test_groupsr      sQ    s7O45KK F:3*#7Hr@   c                     [         R                  " S5      n U R                  R                  n[	        [        S5      U5      (       d   e[	        [        S 5      U5      (       d   e[	        [        U R                  5      U5      (       d   e[	        [        U" S5      5      U5      (       d   eU R                  R                  5       n[	        [        U5      U R                  R                  5      (       d   e[         R                  " [        [
        S5        U R                  U" S5      R                  S5      [        S5      R                  S5      :H  5      (       d   eg )NrU   r   rb   r   )rF   rV   randomRandomState
isinstancer   default_rng	GeneratorrG   
ValueErrorallrand)rW   rsrngs      r>   test_create_random_stater      s
   			W	%B			B)!,b1111)$/4444)"))4b9999)"Q%0"5555
))


!C)#.		0C0CDDDD
MM*13766"Q%**R.$7$:$?$?$CCDDDDr@   c                     [         R                  n [        [        S5      U 5      (       d   e[        [        S 5      U 5      (       d   e[        [        U " S5      5      U 5      (       d   e[        R
                  " [        [        S5        [        R                  " S5      nUR                   R                  nUR                   R                  S5      nUR                   R                  UR                   R                  5       5      n[        n[        n[        [        UR                   5      U5      (       d   e[        [        U" S5      5      U5      (       d   e[        [        U5      U5      (       d   e[        [        U5      U5      (       d   e[        [        5       U5      (       d   e[        [        5       U5      (       d   eSnX2" S5      4 H8  n[        U5      n	U	R                  SUS-   5        U	R                  SUS-   5        M:     g )Nr   rb   rU   i  l    r   r   )r   Randomr   r   rF   rG   r   rV   r   r   r   SFC64r   r   	randrangerandint)
pyrsrW   r   r   rng_explicitold_nprsnprsint64maxrprss
             r>   test_create_py_random_stater      s   ==D,Q/6666,T2D9999,T!W5t<<<<
MM*4c:			W	%B			B
))


%C99&&ryy'89L$H#D,RYY7>>>>,RU3X>>>>,S148888,\:DAAAA+-x8888.0$7777 #H2a5\$Q'aA&Ax!|$ r@   c            
         [         R                  " S5      n SnU R                  R                  n[	        U" U5      5      nU" U5      nUR                  SS5      UR                  SS5      :X  d   eUR                  / SQ5      UR                  / SQ5      :X  d   eUR                  SS5      UR                  SS5      :X  d   eUR                  S5      UR                  S	5      :X  d   eU R                  UR                  / SQ5      UR                  / SQ5      :H  5      (       d   eU R                  UR                  / SQS
5      UR                  / SQSSS9:H  5      (       d   eU R                  [        S5       Vs/ s H  oSR                  SS5      PM     sn[        S5       Vs/ s H  oTR                  SS5      PM     sn:H  5      (       d   eUR                  5       UR!                  5       :X  d   eg s  snf s  snf NrU   rB   r   r   r\   r   r   g      ?gUUUUUU?r   )r   F)replaced   r   )rF   rV   r   r   r   r   r   choicegaussnormalexpovariateexponentialr   shufflesampler   random_sample)rW   seedr   r   rs42_s         r>   &test_PythonRandomInterface_RandomStater      s   			W	%BD			B
4
)Cd8D ==A$,,q!"4444::i DKK	$::::99Q?dkk!Q////??34#3#3G#<<<<66#++i(DLL,CCDDDD66

9a DKK	4K$OO    66$)#J/JqQ	J/(-c
3
1LLA
3	4    ::<4--//// 	03s   ;G5%G:
c            
         [         R                  " S5      n SnU R                  R                  U5      n[	        U R                  R                  U5      5      nUR                  SS5      UR                  SS5      :X  d   eUR                  / SQ5      UR                  / SQ5      :X  d   eUR                  SS5      UR                  SS5      :X  d   eUR                  S5      UR                  S	5      :X  d   eU R                  UR                  / SQ5      UR                  / SQ5      :H  5      (       d   eU R                  UR                  / SQS
5      UR                  / SQSSS9:H  5      (       d   eU R                  [        S5       Vs/ s H  oCR!                  SS5      PM     sn[        S5       Vs/ s H  oBR                  SS5      PM     sn:H  5      (       d   eUR                  5       UR                  5       :X  d   eg s  snf s  snf r   )rF   rV   r   r   r   r   integersr   r   r   r   r   r   r   r   r   r   )rW   r   r   prir   s        r>   $test_PythonRandomInterface_Generatorr      s   			W	%BD
))


%C
		 5 5d ;
<C ==A#,,q!"4444::i CJJy$999999Q?cjjA....??33??7#;;;;66#++i(CKK	,BBCCCC66

9a CJJy$J$NN    66$)#J/JqQ	J/(-c
3
1LLA
3	4    ::<3::<''' 	03s   H5H

)iterable_typer   [c                 :    U " / SQ5      n[        U5      U:X  d   eg )Nr\   )r   )r   r   iterables      r>   test_arbitrary_elementr      s!     Y'HX&(222r@   iteratorc              #   $   #    U  H  ov   M     g 7f)Nr~   ).0is     r>   	<genexpr>r     s     Aas   r\   c                     [         R                  " [        SS9   [        U 5        SSS5        g! , (       d  f       g= f)z0Value error is raised when input is an iterator.zfrom an iterator)matchN)rF   rG   r   r   )r   s    r>   test_arbitrary_element_raisesr     s'     
z);	<(# 
=	<	<s   /
=),r   r   rF   networkxrH   networkx.utilsr   r   r   r   r   r	   r
   r   r   r   r   r   networkx.utils.miscr   r   nested_depth
nested_setnested_mixedmarkparametrizer?   rK   rP   rR   r   r   r   r   r   r   r`   r:   strsetr   r   r   r   r~   r@   r>   <module>r      ss          M
 >Aq6"	EU+%  D"zl[+<V#WXL,
#KL
( M Y
(DN:/ :/z
9E %>00(. !T1IqzC:Qx#P33
 qDO,$	$r@   