ó
    êZh³"  ã                   óª  • S r SSKrSSKrSSKrSSKJr  SSKrSSKrS rS r	S r
\R                  " SS9S	 5       r\R                  " SS9S
 5       r SSKrSr SSKrSr SSKrSr SSKrSr SSKrSr SSKrSr SSKrSr/ r/ SQr/ SQrSS/r S/r!S/r"S/r#S/r$\(       d  \\-  r\(       d  \\-  r\(       d  \\ -  r\(       d  \\!-  r\(       d  \\"-  r\(       d  \\#-  r\(       d  \\$-  rgg! \ a    Sr N¤f = f! \ a    Sr N«f = f! \ a    Sr N²f = f! \ a    Sr N¹f = f! \ a    Sr NÀf = f! \ a    Sr NÇf = f! \ a    Sr NÎf = f)ax  
Testing
=======

General guidelines for writing good tests:

- doctests always assume ``import networkx as nx`` so don't add that
- prefer pytest fixtures over classes with setup methods.
- use the ``@pytest.mark.parametrize``  decorator
- use ``pytest.importorskip`` for numpy, scipy, pandas, and matplotlib b/c of PyPy.
  and add the module to the relevant entries below.

é    N)Úentry_pointsc                 óp   • U R                  SSSSS9  U R                  SSS SS9  U R                  S	SSS
S9  g )Nú	--runslowÚ
store_trueFzrun slow tests)ÚactionÚdefaultÚhelpú	--backendÚstorezGRun tests with a backend by auto-converting nx graphs to backend graphsú--fallback-to-nxz[Run nx function if a backend doesn't implement a dispatchable function (use with --backend))Ú	addoption)Úparsers    Ú^/home/gothic/public_html/Fooocus/fooocus_env/lib/python3.13/site-packages/networkx/conftest.pyÚpytest_addoptionr      sc   € Ø
×ÑØ˜L°%Ð>Nð ñ ð ×ÑØØØØVð	 ñ ð ×ÑØØØð ð	 ò ó    c                 ó  • U R                  SS5        U R                  S5      nUc  [        R                  R	                  S5      n[        SSS9nU(       d  [        R                  " S5        Xl        U(       Ga  US   [        R                  R                  R                  S'   0 [        R                  R                  R                  S'   [        R                  R                  " SS[        R                  R                  5       0[        R                  R                  D6[        R                  l        U R                  S	5      nU(       d  [        R                  R	                  S
5      n[        U5      [        R                  l        g g )NÚmarkerszslow: mark test as slow to runr
   ÚNETWORKX_TEST_BACKENDÚnx_loopbackznetworkx.backends)ÚnameÚgroupac  

             WARNING: Mixed NetworkX configuration! 

        This environment has mixed configuration for networkx.
        The test object nx_loopback is not configured correctly.
        You should not be seeing this message.
        Try `pip install -e .`, or change your PYTHONPATH
        Make sure python finds the networkx repo you are testing

r   ÚNETWORKX_FALLBACK_TO_NX© )Úaddinivalue_lineÚ	getoptionÚosÚenvironÚgetr   ÚwarningsÚwarnÚbackendÚnetworkxÚutilsÚbackendsÚbackend_infoÚConfigÚconfigÚboolÚfallback_to_nx)r'   r!   Úloopback_epr)   s       r   Úpytest_configurer+   ,   s$  € Ø
×Ñ˜IÐ'GÔHØ×Ñ˜{Ó+€GØ�Ü—*‘*—.‘.Ð!8Ó9ˆä MÐ9LÑM€KÞÜ�ŠðSô	
ð „Nßð ;FÀmÑ:TŒ�‰×Ñ×(Ñ(¨Ñ7Ø>@Œ�‰×Ñ×,Ñ,¨]Ñ;Ü#+§>¡>×#8Ò#8ñ $
Ü Ÿ™×-Ñ-Ó/ð$
ä�o‰o×&Ñ&ñ$
Œ�‰Ô ð  ×)Ñ)Ð*<Ó=ˆÞÜŸZ™ZŸ^™^Ð,EÓFˆNÜ)-¨nÓ)=Œ�‰Õ&ð r   c                 óŒ  • U R                   (       aÓ  U R                   nUS:w  aÁ  S[        R                  R                  R                  l        U/[        R                  R                  l        U/[        R                  R                  l	        [        R                  R                  R                  U   R                  5       n[        US5      (       a  [        US5      " U5        U R                  S5      (       a  g [        R                  R!                  SS9nU H&  nSUR"                  ;   d  M  UR%                  U5        M(     g )Nr"   TÚon_start_testsr   zneed --runslow option to run)ÚreasonÚslow)r!   r"   r#   r$   Ú_dispatchableÚ_is_testingr'   Úbackend_priorityÚalgosÚ
generatorsÚloadÚhasattrÚgetattrr   ÚpytestÚmarkÚskipÚkeywordsÚ
add_marker)r'   ÚitemsÚbackend_namer!   Ú	skip_slowÚitems         r   Úpytest_collection_modifyitemsrA   L   sí   € ð ‡~‡~ð —~‘~ˆØ˜:Ó%Ø@DŒH�N‰N×#Ñ#×1Ñ1Ô=Ø6B°^ŒH�O‰O×,Ñ,Ô2Ø;G¸.ŒH�O‰O×,Ñ,Ô7Ü—n‘n×-Ñ-×6Ñ6°|ÑD×IÑIÓKˆGÜ�wÐ 0×1Ñ1Ü˜Ð!1Ô2°5Ô9à×Ñ˜×$Ñ$àÜ—‘× Ñ Ð(FÐ ÐG€IÛˆØ�T—]‘]Õ"Ø�O‰O˜IÖ&ò r   T)Úautousec                  ó  • [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        S	S9  [         R                  " S[        S
S9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  [         R                  " S[        SS9  g )NÚignorez$

single_target_shortest_path_length)ÚcategoryÚmessagez

shortest_pathz

The `normalized`z

all_tripletsz

random_triadÚminimal_d_separatorÚd_separatedz

k_corez	

k_shellz	

k_crustz


k_coronaz

total_spanning_tree_weightz\n\nThe 'create=matrix'z

`compute_v_structureszKeyword argument 'link')r   ÚfilterwarningsÚFutureWarningÚDeprecationWarningr   r   r   Úset_warningsrL   e   sm  € ä×ÒØÜØ8òô
 ×ÒØÜØ#òô
 ×ÒØÔ-Ð7Mòô ×ÒØÔ-Ð7Iòô ×ÒØÔ-Ð7Iòô ×ÒØÔ-Ð7Lòô ×ÒØÔ-°}òô ×Ò˜HÔ/AÈ<ÒXÜ×ÒØÔ-°}òô ×ÒØÔ-°}òô ×ÒØÔ-°~òô ×ÒØÔ-Ð7Wòô ×ÒØÔ-Ð7Qòô ×ÒØÔ-Ð7Ròô ×ÒØÔ-Ð7Pór   c                 ó   • [         U S'   g )NÚnx)r"   )Údoctest_namespaces    r   Úadd_nxrP   ˜   s   € ä&Ð�dÒr   F)ú.algorithms/approximation/traveling_salesman.pyz/algorithms/centrality/current_flow_closeness.pyú"algorithms/centrality/laplacian.pyú!algorithms/node_classification.pyzalgorithms/non_randomness.pyúalgorithms/polynomials.pyz"algorithms/shortest_paths/dense.pyúalgorithms/tree/mst.pyzdrawing/nx_latex.pyúgenerators/expanders.pyúlinalg/bethehessianmatrix.pyúlinalg/laplacianmatrix.pyzutils/misc.py)#rQ   z'algorithms/assortativity/correlation.pyz"algorithms/assortativity/mixing.pyz!algorithms/assortativity/pairs.pyzalgorithms/bipartite/matrix.pyz algorithms/bipartite/spectral.pyz1algorithms/centrality/current_flow_betweenness.pyz8algorithms/centrality/current_flow_betweenness_subset.pyz$algorithms/centrality/eigenvector.pyzalgorithms/centrality/katz.pyrR   z%algorithms/centrality/second_order.pyz%algorithms/centrality/subgraph_alg.pyz!algorithms/communicability_alg.pyz algorithms/community/divisive.pyzalgorithms/distance_measures.pyz$algorithms/link_analysis/hits_alg.pyz(algorithms/link_analysis/pagerank_alg.pyrS   zalgorithms/similarity.pyrU   zalgorithms/walks.pyúconvert_matrix.pyzdrawing/layout.pyúdrawing/nx_pylab.pyz"generators/spectral_graph_forge.pyrV   zlinalg/algebraicconnectivity.pyzlinalg/attrmatrix.pyrW   zlinalg/graphmatrix.pyrX   zlinalg/modularitymatrix.pyzlinalg/spectrum.pyzutils/rcm.pyrZ   zgenerators/classic.pyrY   zdrawing/nx_agraph.pyzdrawing/nx_pydot.pyrT   )%Ú__doc__r   Úsysr   Úimportlib.metadatar   r8   r"   r   r+   rA   ÚfixturerL   rP   ÚnumpyÚ	has_numpyÚImportErrorÚscipyÚ	has_scipyÚ
matplotlibÚhas_matplotlibÚpandasÚ
has_pandasÚ
pygraphvizÚhas_pygraphvizÚpydotÚ	has_pydotÚsympyÚ	has_sympyÚcollect_ignoreÚneeds_numpyÚneeds_scipyÚneeds_matplotlibÚneeds_pandasÚneeds_pygraphvizÚneeds_pydotÚneeds_sympyr   r   r   Ú<module>rv      s   ðñó 
Û 
Û Ý +ã ã òò&>ò@'ð2 ‡‚˜Ññ/ó ð/ðd ‡‚˜Ññ'ó ð'ðÛà€IðÛà€IðÛà€NðÛà€JðÛà€NðÛà€IðÛà€Ið €ò€ò$€ðJ *Ð+BÐCÐ Ø#Ð$€Ø*Ð+Ð Ø$Ð%€Ø*Ð+€æØ�kÑ!€NÞØ�kÑ!€NÞØÐ&Ñ&€NÞØ�lÑ"€NÞØÐ&Ñ&€NÞØ�kÑ!€NÞØ�kÑ!�Nð øðq ó Ø‚Iðûð ó Ø‚Iðûð ó Ø‚Nðûð ó Ø‚Jðûð ó Ø‚Nðûð ó Ø‚Iðûð ó Ø‚Iðús~   ÁC3 ÁD Á!D Á(D Á/D+ Á6D9 Á=E Ã3C>Ã=C>ÄDÄDÄDÄDÄD(Ä'D(Ä+D6Ä5D6Ä9EÅEÅEÅE