HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/distutils/tests/__pycache__/test_sdist.cpython-310.pyc
o

�i�B�@sVdZddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
mZmZddl
mZzddlZdZWneyCdZYnwzddlZddlZdZWney[dZYnwdd	lmZmZdd
lmZddlmZddlmZdd
lmZddl m!Z!ddl"m#Z#ddl$m%Z%dZ&dZ'Gdd�de�Z(dd�Z)e*dkr�ee)��dSdS)z"Tests for distutils.command.sdist.�N)�join)�dedent)�captured_stdout�run_unittest)�check_warningsTF)�sdist�show_formats)�Distribution)�BasePyPIRCCommandTestCase)�DistutilsOptionError)�find_executable)�WARN)�FileList)�ARCHIVE_FORMATSzF
from distutils.core import setup
import somecode

setup(name='fake')
z�# file GENERATED by distutils, do NOT edit
README
buildout.cfg
inroot.txt
setup.py
data%(sep)sdata.dt
scripts%(sep)sscript.py
some%(sep)sfile.txt
some%(sep)sother_file.txt
somecode%(sep)s__init__.py
somecode%(sep)sdoc.dat
somecode%(sep)sdoc.txt
cs�eZdZ�fdd�Z�fdd�Zd1dd�Ze�ed�d	d
��Z	e�ed�e�
ed�dud�e�
ed
�dud�dd����Ze�ed�dd��Z
e�ed�dd��Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Ze�
ejd!kd"�d#d$��Ze�ed�d%d&��Ze�ed�d'd(��Ze�ed�d)d*��Ze�ed�d+d,��Ze�ed-�e�ed.�e�
ed�dud�e�
ed
�dud�d/d0�����Z�ZS)2�
SDistTestCasecs�tt|���t��|_t�t|jd��t�t|jd��|�	|jdfd�|�	|jddfd�|�	|jdft
�t�|j�dS)N�somecode�dist�README�xxxz__init__.py�#�setup.py)�superr�setUp�os�getcwd�old_path�mkdirr�tmp_dir�
write_file�SETUP_PY�chdir��self��	__class__��7/usr/local/lib/python3.10/distutils/tests/test_sdist.pyr:s
zSDistTestCase.setUpcst�|j�tt|���dS�N)rr rrr�tearDownr!r#r%r&r(HszSDistTestCase.tearDownNcCsJ|durdddddd�}t|�}d|_dg|_d|_t|�}d	|_||fS)
z
Returns a cmdNZfakez1.0r)�name�version�urlZauthorZauthor_emailrrTr)r	Zscript_nameZpackagesZinclude_package_datar�dist_dir)r"�metadatar�cmdr%r%r&�get_cmdMs�zSDistTestCase.get_cmdzNeed zlib support to runcCs0t�t|jdd��|�|jdddfd�t�t|jdd��|�|jdddfd�t�t|jdd��|�|jdddfd�|�|jddfd�|��\}}d	g|_|��|��t|jd
�}t�	|�}|�
|dg�t�t|d��}z
|�
�}W|��n|��wgd�}|�
t|�d
d�|D��dS)Nrz.svnzok.pyr�.hg�okz.gitz.nfs0001�zipr�fake-1.0.zip)��PKG-INFOrr�	somecode/�somecode/__init__.pycS�g|]}d|�qS�z	fake-1.0/r%��.0�xr%r%r&�
<listcomp>��z6SDistTestCase.test_prune_file_list.<locals>.<listcomp>)rrrrrr/�formats�ensure_finalized�run�listdir�assertEqual�zipfile�ZipFile�namelist�close�sorted)r"rr.�dist_folder�files�zip_file�content�expectedr%r%r&�test_prune_file_list[s8����

z"SDistTestCase.test_prune_file_list�tarzThe tar command is not found�gzipzThe gzip command is not foundcCs�|��\}}ddg|_|��|��t|jd�}t�|�}|��|�	|ddg�t�
t|d��t�
t|d��ddg|_|��|��t�|�}|��|�	|ddg�dS)N�gztarrOrzfake-1.0.tar�fake-1.0.tar.gz)r/r?r@rArrrrB�sortrC�remove)r"rr.rI�resultr%r%r&�test_make_distribution�s 



z$SDistTestCase.test_make_distributioncCs|��\}}ddgdgd�|_|�|jddfd�|�|jddfd�t|jd	�}t�|�|�|d
fd�t|jd�}t�|�t|jd�}t�|�|�|d
fd�|�|jdfd�|�|jdfd�|�|dfd�|�|dfd�d	gd�fddg|_t|jd�}t�|�|�|dfd�tdd�g|_dg|_	d|_
|��|��t|jd�}t�
|�}|�|dg�t�t|d��}	z
|	��}
W|	��n|	��wgd�}|�t|
�dd�|D��tt|jd��}z
|��}
W|��n|��w|�|
tdtji�dS) Nz*.cfgz*.dat�*.txt)r4rr�doc.txtrzdoc.dat�datazdata.dtZsomer0zlast-message.txt�buildout.cfg�
inroot.txtzfile.txtzother_file.txt)�data/data.dtrZr[Znotexisting�
some/file.txt�some/other_file.txt�scriptsz	script.pyr2Trr3)r4r5rrZzdata/r\r[zscripts/zscripts/script.pyrzsome/r]r^r6r7zsomecode/doc.datzsomecode/doc.txtcSr8r9r%r:r%r%r&r=�r>z3SDistTestCase.test_add_defaults.<locals>.<listcomp>�MANIFEST�sep)r/�package_datarrrrrZ
data_filesr_r?Zuse_defaultsr@rArBrCrDrErFrGrH�open�readr`ra)r"rr.Zdata_dirZsome_dirZhg_dirZ
script_dirrIrJrKrLrM�f�manifestr%r%r&�test_add_defaults�sX�



�



zSDistTestCase.test_add_defaultscCs�|jid�\}}|��|��dd�|�t�D�}|�t|�d�|��|��\}}|��d|_|��dd�|�t�D�}|�t|�d�dS)N)r-cS�g|]	}|�d�r|�qS�zwarning: check:��
startswith�r;�msgr%r%r&r=�
�z<SDistTestCase.test_metadata_check_option.<locals>.<listcomp>�rcSrhrirjrlr%r%r&r=rn)	r/r@rA�get_logsr
rC�lenZ
clear_logsZmetadata_check)r"rr.�warningsr%r%r&�test_metadata_check_option�sz(SDistTestCase.test_metadata_check_optioncCs\|��\}}t��}t�d�|��|�t|j�d�Wd�dS1s'wYdS)N�always�)r/rrr�simplefilterZcheck_metadatarCrq)r"rr.�wr%r%r&�test_check_metadata_deprecateds
"�z,SDistTestCase.test_check_metadata_deprecatedcCsdt��}t�Wd�n1swYtt���}dd�|���d�D�}|�t|�|�dS)NcSsg|]}|���d�r|�qS)z
--formats=)�striprk�r;�liner%r%r&r=s
�z3SDistTestCase.test_show_formats.<locals>.<listcomp>�
)rrrqr�keys�getvalue�splitrC)r"�stdoutZnum_formats�outputr%r%r&�test_show_formatss�zSDistTestCase.test_show_formatscCsz|��\}}|��|�|jd�|�|jd�|�|jd�d|_|�t|j�dg|_|��d|_|�t|j�dS)Nr`�MANIFEST.inrrur2Zsupazipa)	r/Zfinalize_optionsrCrf�templater,r?ZassertRaisesr)r"rr.r%r%r&�test_finalize_options!sz#SDistTestCase.test_finalize_optionscCsZ|��\}}t�|j�|�d|�|��t�|_|��|�	t
�}|�t|�d�dS)Nr�ru)
r/rr rrr@r�filelistZ
read_templaterpr
rCrq)r"rLrr.rrr%r%r&�_check_template8s
zSDistTestCase._check_templatecC�|�d�dS)Nztaunt knights *�r�r!r%r%r&�%test_invalid_template_unknown_commandBsz3SDistTestCase.test_invalid_template_unknown_commandcCr�)NZpruner�r!r%r%r&�%test_invalid_template_wrong_argumentsEsz3SDistTestCase.test_invalid_template_wrong_arguments�ntztest relevant for Windows onlycCr�)Nzinclude examples/r�r!r%r%r&� test_invalid_template_wrong_pathIsz.SDistTestCase.test_invalid_template_wrong_pathcCs |��\}}ddgi|_|�|jddfd�dg|_|��|��t|j�}zdd�|�	��
d�D�}W|��n|��w|�t
|�d	�|�|jdd
fd�|�d�}d|_|��|��t|j�}zd
d�|�	��
d�D�}W|��n|��w|�t
|�d�|�d
|d�dS)NrrWrXrrQcS� g|]}|��dkr|���qS�r4�ryrzr%r%r&r=]��z4SDistTestCase.test_get_file_list.<locals>.<listcomp>r|�zdoc2.txt�build_pyFcSr�r�r�rzr%r%r&r=pr�����)r/rbrrr?r@rArcrfrdrrGrCrqZget_command_objZ	finalizedZassertIn)r"rr.rerfr�Z	manifest2r%r%r&�test_get_file_listOs,


z SDistTestCase.test_get_file_listcCsj|��\}}|��|��t|j�}zdd�|���d�D�}W|��n|��w|�|dd�dS)NcSr�r�r�rzr%r%r&r=�r�z6SDistTestCase.test_manifest_marker.<locals>.<listcomp>r|rz*# file GENERATED by distutils, do NOT edit)	r/r@rArcrfrdrrGrC)r"rr.rerfr%r%r&�test_manifest_markerys

�z"SDistTestCase.test_manifest_markercCs�td�}|��\}}|��|�|j|jf|�|�|jdfd�|�|jdfd�|�|jdfd�|��|�|jj	dg�dS)NzI            # bad.py
            #bad.py
            good.py
            zgood.pyz
# pick me!zbad.pyz# don't pick me!z#bad.py)
rr/r@rrrfrArCr�rJ)r"�contentsrr.r%r%r&�test_manifest_comments�sz$SDistTestCase.test_manifest_commentscCs�|��\}}dg|_|��|�|j|jfd�|�|jdfd�|��|�|jj	dg�t
|j�}zdd�|���d�D�}W|�
�n|�
�w|�|dg�t|jdd�}t�
|�}z
d	d�|D�}W|�
�n|�
�w|�t|�gd
��dS)NrQz
README.manualz0This project maintains its MANIFEST file itself.cSr�r�r�rzr%r%r&r=�r�z6SDistTestCase.test_manual_manifest.<locals>.<listcomp>r|rrRcSsg|]}|j�qSr%)r))r;�tarinfor%r%r&r=�s)zfake-1.0zfake-1.0/PKG-INFOzfake-1.0/README.manual)r/r?r@rrrfrArCr�rJrcrdrrGr�tarfilerH)r"rr.rerf�archive_name�archive�	filenamesr%r%r&�test_manual_manifest�s(�

z"SDistTestCase.test_manual_manifestz
requires zlibzRequires grp and pwd supportcCs|��\}}dg|_t�d�d|_t�d�d|_|��|�	�t
|jdd�}t�
|�}z|��D]}|�|jd�|�|jd�q3W|��n|��w|��\}}dg|_|��|�	�t
|jdd�}t�
|�}z|��D]}|�|jt���qrW|��dS|��w)NrQrrrR)r/r?�pwd�getpwuid�owner�grp�getgrgid�groupr@rArrr�rcZ
getmembersrC�uid�gidrGr�getuid)r"rr.r�r��memberr%r%r&�"test_make_distribution_owner_group�s2
�
�z0SDistTestCase.test_make_distribution_owner_groupr')�__name__�
__module__�__qualname__rr(r/�unittestZ
skipUnless�ZLIB_SUPPORTrNZskipIfrrVrgrsrxr�r�r�r�r�rr)r�r�r�r�r��UID_GID_SUPPORTr��
__classcell__r%r%r#r&r8sV



,��


N






)






��rcCs
t�t�Sr')r�Z	makeSuiterr%r%r%r&�
test_suite�s
r��__main__)+�__doc__rr�r�rrrDZos.pathr�textwraprZtest.supportrrZtest.support.warnings_helperr�zlibr��ImportErrorr�r�r�Zdistutils.command.sdistrrZdistutils.corer	Zdistutils.tests.test_configr
Zdistutils.errorsrZdistutils.spawnrZ
distutils.logr
Zdistutils.filelistrZdistutils.archive_utilrrr`rr�r�r%r%r%r&�<module>sR��4�