Your IP : 216.73.216.213


Current Path : /opt/alt/python310/lib64/python3.10/distutils/tests/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/distutils/tests/__pycache__/test_spawn.cpython-310.pyc

o

0�i6�@s�dZddlZddlZddlZddlZddlmZmZddlm	Z	ddl
mZddl
mZddl
mZddlmZGd	d
�d
ejejej�Zdd�Zed
krTee��dSdS)zTests for distutils.spawn.�N)�run_unittest�
unix_shell)�	os_helper)�find_executable)�spawn)�DistutilsExecError)�supportc@s6eZdZe�ejdvd�dd��Zdd�Zdd�Z	d	S)
�
SpawnTestCase)�nt�posixzRuns only under posix or ntcCs�|��}tjdkrtj�|d�}|�|dt�n
tj�|d�}|�|d�t�|d�|�	t
t|g�tjdkrItj�|d�}|�|dt�n
tj�|d�}|�|d�t�|d�t|g�dS)	N�win32zfoo.shz#!%s
exit 1zfoo.batzexit 1i�z#!%s
exit 0zexit 0)Zmkdtemp�sys�platform�os�path�joinZ
write_filer�chmod�assertRaisesrr)�selfZtmpdirZexe�r�A/opt/alt/python310/lib64/python3.10/distutils/tests/test_spawn.py�
test_spawns

zSpawnTestCase.test_spawncCst�����}tj}|d}tj�||�}t|d��Wd�n1s$wYt�|tj	�t
||d�}|�||�tj
dkrMt
||d�}|�||�t�|��t
|�}|�||�Wd�n1sgwYd|}t
||d�}|�|�t���d}d|d<tjjd|d	d
��Gtj�d|��0t
|�}|�|�t�|��t
|�}|�||�Wd�n1s�wYWd�n1s�wYWd�n1s�wYWd�n1s�wYt���h}tj|d<tjjddd	d
��Itj�dd��1t
|�}|�|�t�|��t
|�}|�||�Wd�n	1�s+wYWd�n	1�s;wYWd�n	1�sKwYWd�n	1�s[wYt����}|�dd�tjjdtd	d��*tj�d|��t
|�}|�||�Wd�n	1�s�wYWd�n	1�s�wYtjjd|d	d
��*tj�dd��t
|�}|�||�Wd�n	1�s�wYWd�n	1�s�wYWd�n1�s�wYWd�dSWd�dS1�swYdS)
Nz.exe�wb)rrZ
dontexist_��PATHzdistutils.spawn.os.confstrT)Zreturn_value�createzdistutils.spawn.os.defpath)Zside_effectr)rZtemp_dirZTESTFNrrr�openr�stat�S_IXUSRrZassertEqualr
rZ
change_cwdZassertIsNoneZEnvironmentVarGuard�unittestZmockZpatch�pathsep�pop�
ValueError)rZtmp_dirZprogram_noeextZprogram�filenameZrvZdont_exist_program�envrrr�test_find_executable.s��
�

���
������

��
������
�����	����� ��=$�z"SpawnTestCase.test_find_executablecCsJ|�t��
}tdg�Wd�n1swY|�dt|j��dS)Nzdoes-not-existzcommand 'does-not-exist' failed)rrrZassertIn�strZ	exception)r�ctxrrr�test_spawn_missing_exes�z$SpawnTestCase.test_spawn_missing_exeN)
�__name__�
__module__�__qualname__rZ
skipUnlessr�namerr%r(rrrrr	s�
Qr	cCs
t�t�S)N)rZ	makeSuiter	rrrr�
test_suite�s
r-�__main__)�__doc__rrr
Z
unittest.mockrZtest.supportrrrZdistutils.spawnrrZdistutils.errorsrZdistutils.testsrZTempdirManagerZLoggingSilencerZTestCaser	r-r)rrrr�<module>s&�w�