o
    h^                     @   s\   d dl Z d dlZd dlZedZed dd Zdd Zej	dd	d
 Z
dd ZdS )    Nscipynumpyc                  C   sX   t d} t |  t j| d tt t   W d    d S 1 s%w   Y  d S )N   G)nx
path_graphpagerankpytestraises	TypeErrorr    r   ]/var/www/html/env_mimamsha/lib/python3.10/site-packages/networkx/utils/tests/test_backends.pytest_dispatch_kwds_vs_args   s   


"r   c               	   C   s   d} t jjj D ]#\}}zt|}W n
 tjy   Y q	w t||u s(J | d7 } q	| dks3J ttt j	t j	u sAJ d S )Nr      )
r   utilsbackends_registered_algorithmsitemspickledumpsPicklingErrorloadsinverse_line_graph)countnamefuncpickledr   r   r   test_pickle   s   
 r   zVnot nx.config['backend_priority'] or nx.config['backend_priority'][0] != 'nx-loopback'c                     s$  ddl m} m} tjg dg dg dg}g   fdd}td dd	d
}| j}|| _|| _z7 g ks8J t	t
|t
ju sDJ  dgksKJ t	t
j|dd|u sXJ  ddgks`J W t|| _| `nt|| _| `w tjtdd t
j|dd W d    d S 1 sw   Y  d S )Nr   )LoopbackDispatcherLoopbackGraph)r         )r!   r   r   )r"   r   r   c                    s,     d | j| d|i |ddddS )Nr   from_scipy_sparse_arrayT)preserve_edge_attrspreserve_node_attrspreserve_graph_attrs)appendconvert_from_nx__getattr__)selfargskwargsside_effectsr   r   r#   4   s   
zCtest_graph_converter_needs_backend.<locals>.from_scipy_sparse_array)r   c                S   s   t | tju r	| S t| S N)typer   Graph)objr   r   r   r   convert_to_nx=   s   
z9test_graph_converter_needs_backend.<locals>.convert_to_nxr   znx-loopback)backendzUnable to load)matchzbad-backend-name))networkx.classes.tests.dispatch_interfacer   r    spsparse	coo_arraystaticmethodr3   r#   r0   r   r1   r
   r   ImportError)r   r    Ar#   r3   orig_convert_to_nxr   r-   r   "test_graph_converter_needs_backend!   s,   
	

"r>   c                   C   s   t tjt tjju sJ d S r/   )r0   r   r	   	orig_funcr   r   r   r   test_dispatchable_are_functionsW   s   r@   )r   r
   networkxr   importorskipr7   r   r   markskipifr>   r@   r   r   r   r   <module>   s    


2