U
    ¸mœdB  ã                   @   s  d dl Z d dlZd dlZd dlZd dlmZ d dlmZ dgdgdgdgdgd	gdd
gdd
gdd
gdd
gd	d
gddgd	dgddgd	dggZe j	ej
ejgd�dd„ ƒZe j	dd„ ƒZe jjedd�e j de¡dd„ ƒƒZe jjedd�e j de¡dd„ ƒƒZdS )é    N)Ú_shell_utils)ÚIS_WASMÚexezpath/exezpath\exez\\server\path\exezpath to/exezpath to\exez--flagz--flag-"quoted"z"--flag-quoted")Úparamsc                 C   s   | j S ©N)Úparam)Úrequest© r	   ú_/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/numpy/distutils/tests/test_shell_utils.pyÚParser   s    r   c                 C   s@   | t jkrt d¡ | t jkr&dd„ S | t jkr8dd„ S t‚d S )Nz$Unable to run with non-native parserc                 S   s
   t  | ¡S r   ©Ú
subprocessÚcheck_output©Úcmdr	   r	   r
   Ú<lambda>-   ó    zrunner.<locals>.<lambda>c                 S   s   t j| dd�S )NT)Úshellr   r   r	   r	   r
   r   0   r   )r   ZNativeParserÚpytestÚskipÚWindowsParserÚPosixParserÚNotImplementedError)r   r	   r	   r
   Úrunner'   s    



r   zCannot start subprocess)ÚreasonÚargvc                 C   s<   t jddg}|  || ¡}||ƒ ¡ }t |¡|ks8t‚dS )zB
    Test that join produces strings understood by subprocess
    z-cz1import json, sys; print(json.dumps(sys.argv[1:]))N)ÚsysÚ
executableÚjoinÚdecodeÚjsonÚloadsÚAssertionError)r   r   r   r   ÚjoinedZjson_outr	   r	   r
   Útest_join_matches_subprocess5   s     þr$   c                 C   sD   z |   |¡}||  |¡kst‚W n tk
r>   t d¡ Y nX dS )z:
    Test that split is the inverse operation of join
    zNot implementedN)r   Úsplitr"   r   r   r   )r   r   r#   r	   r	   r
   Útest_roundtripE   s
    
r&   )r   r   r    r   Znumpy.distutilsr   Znumpy.testingr   Z
argv_casesZfixturer   r   r   r   ÚmarkZskipifZparametrizer$   r&   r	   r	   r	   r
   Ú<module>   sD   îþ

