
    wgx
                     H    d dl Z d dlZd dlZd dlZd dlmZ d Zd Zd Z	d Z
y)    Nc                  n   t        j                  d      } t        j                  d      }| j                  | j                        t	        j
                  dd      k(  sJ 	 |j                   J # t        $ r Y nw xY wt        |t         j                        sJ 	 |j                   J # t        $ r Y y w xY w)Nmathanything_not_realr   gư>)	lazy_lazy_importsinpipytestapproxModuleNotFoundError
isinstanceDelayedImportErrorModule)r   r   s     e/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/networkx/tests/test_lazy_imports.pytest_lazy_import_basicsr   
   s    V$D))*=> 88DGGa 6666u ')F)FGGGu s$    A. .	A:9A:B( (	B43B4c                  T   t        j                  d      } t        j                  d      }t        |       t        j                  k(  sJ dt
        j                  v sJ t        |      t         j                  k(  sJ dt
        j                  vsJ t        j                  d      }t        j                  d      }t        |      t        j                  k(  sJ dt
        j                  v sJ |j                   t        |      t        j                  k(  sJ dt
        j                  v sJ y )Nr   r   numpy)r   r   typetypes
ModuleTypesysmodulesr   r
   importorskipr	   )r   r   np_testnps       r   &test_lazy_import_impact_on_sys_modulesr      s    V$D))*=>:)))))S[[   !"d&C&CCCCckk111 !!'*G			7	#B8u'''''ckk!!!EE8u'''''ckk!!!    c                     t        j                  d      } t        j                  d      }t        | t         j                        r	 | j                  j
                   J t        |t         j                        r	 |j                  |j                         J | j                  j                  |j                        t        j                  dd      k(  sJ y # t        $ r Y y w xY w# t        $ r Y y w xY w)Nscipyr      g-C6?)r   r   r   r   specialerfr   r   r	   r
   r   )spr   s     r   test_lazy_import_nonbuiltinsr#   4   s    			7	#B			7	#B"d334	JJNN5 
B55	6	FF255M5 zz~~bee$a(>>>> # 		 # 		s$   C 9C$ 	C! C!$	C0/C0c                  "   d} ddg}ddgi}t         j                  | ||d}d}t        |i |       t         j                  | ||d d d d}|j                         |j                         k(  sJ |j	                         D ]  \  }}|	||   |k(  rJ  y )	Nmymodmysubmoduleanothersubmodulenot_real_submodsome_var_or_func)attachnamesubmodsmyallzA__getattr__, __lazy_dir__, __all__ = attach(name, submods, myall))r*   r+   r,   r-   __getattr____lazy_dir____all__)r   r*   execkeysitems)r+   r,   r-   loclssexpectedkvs           r   test_lazy_attachr9   G   s    D01G!3 45E ++	E 	LAB++H ::<8==?***  !1=8q= =!r   )	importlibr   r   r
   networkx.lazy_importslazy_importsr   r   r   r#   r9    r   r   <module>r>      s(     
   $*"*?&!r   