o
    ðT·j$  ã                   @   s¨   d dl mZmZmZ d dlZd dlmZmZmZm	Z	m
Z
 d dlmZmZmZ dd„ ZG dd„ dƒZG d	d
„ d
ƒZG dd„ dƒZG dd„ dƒZejjedd�dd„ ƒZdS )é    )ÚjoinÚsepÚdirnameN)Ú
appendpathÚ
minrelpathÚgpathsÚget_shared_lib_extensionÚget_info)Úassert_Úassert_equalÚIS_EDITABLEc                  G   s   t tf|  Ž S )N)r   r   )Úpaths© r   úg/home/dinkstrade/pdmp-scanner/venv/lib/python3.10/site-packages/numpy/distutils/tests/test_misc_util.pyÚ<lambda>   s    r   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚTestAppendpathc                 C   s\   t tddƒtddƒƒ t tddƒtddƒƒ t tddƒtddƒƒ t tddƒtddƒƒ d S )NÚprefixÚnamez/prefixz/name©r   r   r   Úajoin©Úselfr   r   r   Útest_1   s   zTestAppendpath.test_1c                 C   sN   t tddƒtdddƒƒ t tddƒtddddƒƒ t tddƒtdddƒƒ d S )	Nz
prefix/subr   r   Úsubzsup/nameÚsupú/prefix/subz/prefix/namer   r   r   r   r   Útest_2   s   

ÿ
ÿ

ÿzTestAppendpath.test_2c              	   C   sX   t tddƒtddddƒƒ t tddƒtddd	dd
dƒƒ t tddƒtddd	ddƒƒ d S )Nr   z/prefix/sup/namer   r   r   r   z/prefix/sub/sub2z/prefix/sup/sup2/nameÚsub2Úsup2z/prefix/sub/sup/name)r   r   r   r   r   r   r   Útest_3   s   
ÿ
ÿ
ÿzTestAppendpath.test_3N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r      s    r   c                   @   ó   e Zd Zdd„ ZdS )ÚTestMinrelpathc                 C   sº   dd„ }t t|dƒƒ|dƒƒ t tdƒdƒ t t|dƒƒdƒ t t|dƒƒdƒ t t|d	ƒƒd
ƒ t t|dƒƒdƒ t t|dƒƒ|dƒƒ t t|dƒƒ|dƒƒ t t|dƒƒ|dƒƒ d S )Nc                 S   s   |   dt¡S )Nú/)Úreplacer   )Úpathr   r   r   r   )   s    z'TestMinrelpath.test_1.<locals>.<lambda>zaa/bbú..zaa/..Ú zaa/../bbÚbbzaa/bb/..Úaazaa/bb/../..zaa/bb/../cc/../ddzaa/ddz.././..z../..zaa/bb/.././../ddÚdd)r   r   )r   Únr   r   r   r   (   s   zTestMinrelpath.test_1N)r    r!   r"   r   r   r   r   r   r$   &   ó    r$   c                   @   r#   )Ú
TestGpathsc                 C   s`   t tttƒdƒƒ}td|ƒ}tt|ddƒ|v t|ƒƒ td|ƒ}tt|dƒ|d kt|ƒƒ d S )Nr(   zcommand/*.pyÚcommandzbuild_src.pyzsystem_info.pyr   )r   r   r   Ú__file__r   r
   Úrepr)r   Ú
local_pathÚlsÚfr   r   r   Útest_gpaths6   s
   

 zTestGpaths.test_gpathsN)r    r!   r"   r6   r   r   r   r   r/   4   r.   r/   c                   @   r#   )ÚTestSharedExtensionc                 C   s‚   dd l }tdd�}|j d¡rt|dƒ n#|j d¡r!t|dƒ n|j d¡r-t|dƒ n|j d	¡r8t|d
ƒ ttdd�ƒ d S )Nr   F)Úis_python_extÚlinuxz.soÚgnukfreebsdÚdarwinz.dylibÚwinz.dllT)Úsysr   ÚplatformÚ
startswithr   r
   )r   r=   Úextr   r   r   Útest_get_shared_lib_extension?   s   

z1TestSharedExtension.test_get_shared_lib_extensionN)r    r!   r"   rA   r   r   r   r   r7   =   r.   r7   z@`get_info` .ini lookup method incompatible with editable install)Úreasonc                  C   s&   t dƒ} t| tƒsJ ‚d| v sJ ‚d S )NÚnpymathÚdefine_macros)r	   Ú
isinstanceÚdict)Úinfor   r   r   Útest_installed_npymath_iniN   s   rH   )Úos.pathr   r   r   ÚpytestÚnumpy.distutils.misc_utilr   r   r   r   r	   Únumpy.testingr
   r   r   r   r   r$   r/   r7   ÚmarkÚskipifrH   r   r   r   r   Ú<module>   s    	þ