
    sh!                     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        r/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/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                  D   / SQn [        U 5      U L d   e[        U 5      U :X  d   e[        [        U 5      S   [        5      (       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   
isinstanceintpytestraisesnxNetworkXError)mylists    r>   test_make_list_of_intsrL   >   sz     FV$...V$...'/2C8888
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_distributionrQ   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)rG   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      (       d   e[	        U5      [        U5      :X  d   e[	        U5      n[        US   [        5      (       d   e[        R                  " [        R                  [        U5        g )Nr   r   r   )dtype)g      ?r   r   )g?r   r   r   )rX   arrayint64rE   r   listrF   rG   rH   rI   rJ   )selfabcBs        r>   test_numpy_to_list_of_ints)TestNumpyArray.test_numpy_to_list_of_intsS   s    HHYbhhH/HH[!HH[!+A.5555 #tAw...a !A$$$$$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   rc   rd   r   mapping)rd   rc   r   )r   rX   testingassert_allcloser_   sum)rb   drc   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   rj   r   r&   r   rk   !   )r   rX   rm   rn   r_   ro   rb   rp   rl   rc   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 rt   )r	   rX   rm   rn   r_   r   ro   rv   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   rj   r   rk   r   )r	   rX   rm   rn   r_   r   ro   rv   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__classmethodrZ   rg   rq   rw   rz   r}   __static_attributes__r   r@   r>   rS   rS   M   s-    * *>/00/r@   rS   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   )rangera   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   rc   rd   re   rp   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 )NrV   r   rc   r   )rG   rW   randomRandomStaterE   r   default_rng	GeneratorrH   
ValueErrorallrand)rX   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   rc   rV   i  l    r   r   )r   RandomrE   r   rG   rH   r   rW   r   r   r   SFC64r   r   	randrangerandint)
pyrsrX   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 NrV   rB   r   r   r]   r   r   g      ?gUUUUUU?r   )r   F)replaced   r   )rG   rW   r   r   r   r   r   choicegaussnormalexpovariateexponentialr   shufflesampler   random_sample)rX   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   )rG   rW   r   r   r   r   integersr   r   r   r   r   r   r   r   r   r   )rX   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)rG   rH   r   r   )r   s    r>   test_arbitrary_element_raisesr     s'     
z);	<(# 
=	<	<s   /
=),r   r   rG   networkxrI   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?   rL   rQ   rS   r   r   r   r   r   r   ra   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@   