a
    ;eB                     @   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_WASMZ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   Z/var/www/sunrise/env/lib/python3.9/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s8J 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)r
   r   r   r   joinedZjson_outr   r   r	   test_join_matches_subprocess5   s    r"   c                 C   sB   z |  |}|| |ksJ W n ty<   td Y n0 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	   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   

