o 6a@sddlZddlZddlZddlZddlmZdgdgdgdgdgdgdd gdd gdd gdd gdd gdd gdd gdd gdd ggZejejej gd d dZ ejddZ ej deddZej deddZdS)N) _shell_utilsexezpath/exezpath\exez\\server\path\exez path to/exez path to\exez--flagz--flag-"quoted"z"--flag-quoted")paramscCs|jSN)param)requestrH/usr/lib/python3/dist-packages/numpy/distutils/tests/test_shell_utils.pyParsersr cCs<|tjkr td|tjkrddS|tjkrddSt)Nz$Unable to run with non-native parsercSs t|Sr subprocess check_outputcmdrrr ,s zrunner..cSstj|ddS)NT)shellr rrrr r/s)r NativeParserpytestskip WindowsParser PosixParserNotImplementedError)r rrr runner&s    rargvcCs<tjddg}|||}||}t||ksJdS)zB Test that join produces strings understood by subprocess z-cz1import json, sys; print(json.dumps(sys.argv[1:]))N)sys executablejoindecodejsonloads)r rrrjoinedjson_outrrr test_join_matches_subprocess4s  r"cCsBz||}|||ksJWdSty tdYdSw)z: Test that split is the inverse operation of join zNot implementedN)rsplitrrr)r rr rrr test_roundtripCs   r$)rr rrnumpy.distutilsr argv_casesfixturerrr rmark parametrizer"r$rrrr s@