Your IP : 216.73.217.32


Current Path : /opt/alt/python35/lib64/python3.5/distutils/tests/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/distutils/tests/__pycache__/test_dist.cpython-35.pyc



��Yf�>�@skdZddlZddlZddlZddlZddlZddlZddlmZddlm	Z	m
Z
mZddlm
Z
ddlmZmZmZddlmZddlmZGd	d
�d
e
�ZGdd�de	�ZGd
d�dejejejej�ZGdd�dejejej�Zdd�Zedkrgee��dS)zTests for distutils.dist.�N)�mock)�Distribution�fix_help_options�DistributionMetadata)�Command)�TESTFN�captured_stdout�run_unittest)�support)�logc@s+eZdZdZdgZdd�ZdS)	�	test_distz#Sample distutils extension command.�sample-option=�S�	help textcCs
d|_dS)N)�
sample_option)�self�r�>/opt/alt/python35/lib64/python3.5/distutils/tests/test_dist.py�initialize_optionssztest_dist.initialize_optionsN)r
rr)�__name__�
__module__�__qualname__�__doc__Zuser_optionsrrrrrrs	rc@s"eZdZdZdd�ZdS)�TestDistributionz�Distribution subclasses that avoids the default search for
    configuration files.

    The ._config_files attribute must be set before
    .parse_config_files() is called.
    cCs|jS)N)�
_config_files)rrrr�find_config_files&sz"TestDistribution.find_config_filesN)rrrrrrrrrrsrcs�eZdZ�fdd�Z�fdd�Zfdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Z�S)�DistributionTestCasecsFtt|�j�tjtjdd�f|_tjdd�=dS)N�)�superr�setUp�sys�argv)r)�	__class__rrr/szDistributionTestCase.setUpcsA|jdt_|jdtjdd�<tt|�j�dS)Nrr)r!r rr�tearDown)r)r"rrr#4szDistributionTestCase.tearDowncCs*t�}||_|j�|j�|S)N)rrZparse_config_files�parse_command_line)rZconfigfiles�drrr�create_distribution9s
		

z(DistributionTestCase.create_distributioncCs9tjjd�|j�}|j|j�dg�dS)N�buildzdistutils.command)r r!�appendr&�assertEqual�get_command_packages)rr%rrr�!test_command_packages_unspecified@sz6DistributionTestCase.test_command_packages_unspecifiedcCs�ddlm}tjjddddg�|j�}|j|j�ddd	g�|jd�}|j	||�|j|j
d
�dS)Nr)rz--command-packageszfoo.bar,distutils.testsrz
-Ssometextzdistutils.commandzfoo.barzdistutils.testsZsometext)Zdistutils.tests.test_distrr r!�extendr&r)r*Zget_command_objZassertIsInstancer)rrr%�cmdrrr�test_command_packages_cmdlineEs
z2DistributionTestCase.test_command_packages_cmdlinec	(Cs�tjjd�|jtjt�d}ttd�� }tdj	|�d|�WdQRXt
jjtdddd��}|j
tg�}WdQRXt|f}d	|d
|d|d|d
|d|d|d|d|d|d|d|d|i
}|jt|jjd�j��t|j���x:|jjd�j�D] \}}|j|||�qBWt
jjtdddd��}|j
tg�}WdQRXx3|j�D]%}|j||jjdi��q�WdS)NZinstallz/somedir�wz�[install]
install-base = {0}
install-platbase = {0}
install-lib = {0}
install-platlib = {0}
install-purelib = {0}
install-headers = {0}
install-scripts = {0}
install-data = {0}
prefix = {0}
exec-prefix = {0}
home = {0}
user = {0}
root = {0}�file�prefixz/a�base_prefixZinstall_baseZinstall_platbaseZinstall_libZinstall_platlibZinstall_purelibZinstall_headersZinstall_scriptsZinstall_data�exec_prefix�home�user�rootz/b)r r!r(�
addCleanup�os�unlinkr�open�print�formatrZpatchZmultipler&r)�sortedZcommand_options�get�keys�items�assertNotIn)	rZfakepath�f�valuesr%Zoption_tupleZresult_dict�key�valuerrr�test_venv_install_optionsTs>	
!%!z.DistributionTestCase.test_venv_install_optionsc
Cs*tjjd�|jtjt�ttd�}z$tdd|�tdd|�Wd|j	�X|j
tg�}|j|j�dddg�d	d
dgtjdd�<|j
tg�}|j|j�dd
g�d	ddgtjdd�<|j
tg�}|j|j�dg�dS)
Nr'r/z[global]r0z!command_packages = foo.bar, splatzdistutils.commandzfoo.barZsplatz--command-packagesZsporkr�)
r r!r(r7r8r9rr:r;�closer&r)r*)rrBr%rrr� test_command_packages_configfile�s"
z5DistributionTestCase.test_command_packages_configfilecs�g��fdd�}|jttdtj�|t_tdddddddd	d
dii�}|jt��d�|jdt|��dS)
Ncs�j|�dS)N)r()�msg)�warnsrr�_warn�sz6DistributionTestCase.test_empty_options.<locals>._warn�warn�attrsZauthor�xxx�name�versionZurlZxxxxZoptionsr)	r7�setattr�warningsrMrr)�lenrA�dir)rrL�distr)rKr�test_empty_options�s	z'DistributionTestCase.test_empty_optionscCsgddddi}td|�}|j�|j|jjddg�|j|jjddg�dS)N�keywordszone,two�	platformsrN�one�two)rZfinalize_optionsr)�metadatarYrX)rrNrVrrr�test_finalize_options�s
z*DistributionTestCase.test_finalize_optionscCs�t�}|j|jd�|j�}|j|dg�|j|jdg�d|_|j�}|j|dddg�dS)Nzdistutils.commandzone,tworZr[)rr)Zcommand_packagesr*)rrVZcmdsrrr�test_get_command_packages�s	
	z.DistributionTestCase.test_get_command_packagescCs8t�}d}ddi}|jt|j||�dS)N�ok�levelZok2)r_)r�assertRaises�
ValueErrorZannounce)rrV�args�kwargsrrr�
test_announce�s	z"DistributionTestCase.test_announcecs	|j��tjdkr3tjj�d�}ntjj�d�}t|d��}|jd�WdQRX�fdd�}tjj}|tj_z=t�}|j	�}tdd	d
gi�}|j	�}Wd|tj_X|j
t|�dt|��dS)N�posixz.pydistutils.cfgzpydistutils.cfgr/z[distutils]
cs�S)Nr)�path)�	temp_homerr�	_expander�szFDistributionTestCase.test_find_config_files_disable.<locals>._expanderrNZscript_argsz
--no-user-cfgr)�mkdtempr8rPrg�joinr:�write�
expanduserrrr)rT)r�
user_filenamerBriZold_expanderr%Z	all_files�filesr)rhr�test_find_config_files_disable�s 	
z3DistributionTestCase.test_find_config_files_disable)rrrrr#r&r+r.rFrIrWr]r^rerprr)r"rr*s:rcs�eZdZ�fdd�Z�fdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Z�S)#�MetadataTestCasecs6tt|�j�tjtjdd�f|_dS)N)rrqrr r!)r)r"rrr�szMetadataTestCase.setUpcsA|jdt_|jdtjdd�<tt|�j�dS)Nrr)r!r rrqr#)r)r"rrr#�szMetadataTestCase.tearDowncCs&tj�}|jj|�|j�S)N)�io�StringIOr\�write_pkg_file�getvalue)rrVZsiorrr�format_metadatasz MetadataTestCase.format_metadatacCs�ddddi}t|�}|j|�}|jd|�|jd|j��|jd|j��|jd|j��dS)	NrP�packagerQz1.0zMetadata-Version: 1.0z	provides:z	requires:z
obsoletes:)rrv�assertInrA�lower)rrNrV�metarrr�test_simple_metadatasz%MetadataTestCase.test_simple_metadatacCs�dddddddgi}t|�}|j|jj�ddg�|j|j�ddg�|j|�}|jd|�|jd|j��|jd	|j��dS)
NrPrwrQz1.0�provideszpackage.subzMetadata-Version: 1.1z	requires:z
obsoletes:)rr)r\Zget_providesrvrxrAry)rrNrVrzrrr�
test_providess

zMetadataTestCase.test_providesc	Cs,|jttddddddgi�dS)NrPrwrQz1.0r|zmy.pkg (splat))rarbr)rrrr�test_provides_illegalsz&MetadataTestCase.test_provides_illegalcCs�dddddddgi}t|�}|j|jj�ddg�|j|j�ddg�|j|�}|jd|�|jd	|j��|jd
|�|jd|�|jd|j��dS)
NrPrwrQz1.0�requires�otherzanother (==1.0)zMetadata-Version: 1.1z	provides:zRequires: otherzRequires: another (==1.0)z
obsoletes:)rr)r\Zget_requiresrvrxrAry)rrNrVrzrrr�
test_requires%s

zMetadataTestCase.test_requiresc	Cs,|jttddddddgi�dS)NrPrwrQz1.0rzmy.pkg (splat))rarbr)rrrr�test_requires_illegal5sz&MetadataTestCase.test_requires_illegalcCs�dddddddgi}t|�}|j|jj�ddg�|j|j�ddg�|j|�}|jd|�|jd	|j��|jd
|j��|jd|�|jd|�dS)
NrPrwrQz1.0�	obsoletesr�zanother (<1.0)zMetadata-Version: 1.1z	provides:z	requires:zObsoletes: otherzObsoletes: another (<1.0))rr)r\Z
get_obsoletesrvrxrAry)rrNrVrzrrr�test_obsoletes;s

zMetadataTestCase.test_obsoletesc	Cs,|jttddddddgi�dS)NrPrwrQz1.0r�zmy.pkg (splat))rarbr)rrrr�test_obsoletes_illegalKsz'MetadataTestCase.test_obsoletes_illegalcCsJddddddgi}t|�}|j|�}|jd|�dS)NrP�BoarQz3.0Zclassifiersz#Programming Language :: Python :: 3zMetadata-Version: 1.1)rrvrx)rrNrVrzrrr�test_classifierQs
z MetadataTestCase.test_classifiercCsGddddddi}t|�}|j|�}|jd|�dS)NrPr�rQz3.0�download_urlzhttp://example.org/boazMetadata-Version: 1.1)rrvrx)rrNrVrzrrr�test_download_urlXs
z"MetadataTestCase.test_download_urlcCshtjd�}ddddd|i}t|�}|j|�}|jdd�}|j||�dS)Nzc        example::
              We start here
            and continue here
          and end here.rPrwrQz1.0�long_description�
�� z        z	
        )�textwrap�dedentrrv�replacerx)rZ	long_descrNrVrzrrr�test_long_description_s	z&MetadataTestCase.test_long_descriptioncCstjdkrd}nd}|j�}tjj||�}t|d�}z|jd�Wd|j�Xz�t�}t	j
dkr�|tjd<|j�}|j
||�t	j
d	kr�|tjd<|j�}|j
||d
||f�Wdtj|�XdS)Nrfz.pydistutils.cfgzpydistutils.cfgr/�.�linux�darwin�HOME�win32z%r not found in %r)r�r�)r8rPrjrgrkr:rlrHrr �platform�environrrx�remove)rrnZtemp_dirrBrVrorrr�test_custom_pydistutilsns*		

z(MetadataTestCase.test_custom_pydistutilscCsDd
dg}t|�}|j|d	d�|j|dd
�dS)N�a�b�cr%r���r)r�r�r�r%)rr�r�r�)r�r�r�)rr�r�)rr))rZhelp_tuplesZ
fancy_optionsrrr�test_fix_help_options�sz&MetadataTestCase.test_fix_help_optionsc
Cs�|jtjtjj�t�}gt_d|_d|_	t
��}|j�WdQRXdd�|j�j
d�D�}|j|�dS)Nrzsetup.pycSs(g|]}|j�dkr|�qS)rG)�strip)�.0�linerrr�
<listcomp>�s	z3MetadataTestCase.test_show_help.<locals>.<listcomp>r�)r7rZ
set_thresholdZ_global_logZ	thresholdrr r!�helpZscript_namerr$ru�splitZ
assertTrue)rrV�s�outputrrr�test_show_help�s				"zMetadataTestCase.test_show_helpcCs)ddddddddd	d
ddd
gddgi}t|�}|j}tj�}|j|�|jd�|j|�|j|jd�|j|j	d�|j|j
d�|j|jd
�|j|jdd
g�|j|j
dg�|j|jd�|j|jdg�dS)NrPrwrQz1.0r�Zdesc�descriptionrOr�zhttp://example.comrXrZr[rZfoorZUNKNOWN)rr\rrrsrt�seekZ
read_pkg_filer)rPrQr�r�rXrYr�r)rrNrVr\ZPKG_INFOrrr�test_read_metadata�s*	


z#MetadataTestCase.test_read_metadata)rrrrr#rvr{r}r~r�r�r�r�r�r�r�r�r�r�r�rr)r"rrq�s"
#rqcCs<tj�}|jtjt��|jtjt��|S)N)�unittestZ	TestSuiteZaddTestZ	makeSuiterrq)Zsuiterrr�
test_suite�sr��__main__) rr8rrr r�rSr�rZdistutils.distrrrZ
distutils.cmdrZtest.supportrrr	Zdistutils.testsr
Z	distutilsrrrZLoggingSilencerZTempdirManagerZEnvironGuardZTestCaserrqr�rrrrr�<module>s.��