o
    wi	                     @   s:   d dl Z d dlZd dlmZ ddlmZ G dd dZdS )    N)paths_on_pythonpath   )
namespacesc                   @   s   e Zd Zdd Zdd ZdS )TestNamespacesc           	      C   s   t |d}t |d}|d }|d }||f}tjdddt|dt|g}t| t | tjdddt|dt|g}t| tjd	d
g}tt	t| t| W d   dS 1 saw   Y  dS )z
        Installing two packages sharing the same namespace, one installed
        to a site dir and the other installed just to a path on PYTHONPATH
        should leave the namespace in tact and both packages reachable by
        import.
        	myns.pkgAz	myns.pkgBzsite-packageszpath-packages-mpip.__main__install-t-cz"import myns.pkgA; import myns.pkgBN)
r   build_namespace_packagesys
executablestr
subprocess
check_callmake_site_dirr   map)	selftmpdirpkg_Apkg_Bsite_packagespath_packagestargetsinstall_cmd
try_import r   ]/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/setuptools/tests/test_namespaces.pytest_mixed_site_and_non_site
   s>   
	

	"z+TestNamespaces.test_mixed_site_and_non_sitec                 C   s   t |d}|d }tjdddt|dt|g}t| t | tjddg}tt|g tj|t|d	 W d
   d
S 1 sDw   Y  d
S )z
        Installing a namespace packages but also having it in the current
        working directory, only one version should take precedence.
        r   packagesr   r   r	   r
   r   zimport myns.pkgA)cwdN)	r   r   r   r   r   r   r   r   r   )r   r   r   targetr   pkg_resources_impr   r   r   (test_namespace_package_installed_and_cwd4   s&   
	
"z7TestNamespaces.test_namespace_package_installed_and_cwdN)__name__
__module____qualname__r   r$   r   r   r   r   r   	   s    *r   )r   r   setuptools._pathr    r   r   r   r   r   r   <module>   s
    