HEX
Server: Apache
System: Linux srv1.prosuiteplus.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: prosuiteplus (1001)
PHP: 8.3.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/pbr/tests/__pycache__/test_setup.cpython-38.pyc
U

jP�^H�@sddlmZddlZzddlZejZWn"ek
rHddlZejZYnXddlZddl	m
Z
ddl	mZddl	mZddl
mZGdd�dej�Zd	Zd
d�Zd�d
d�e�d�D��ZGdd�dej�ZGdd�de�ZGdd�dej�ZGdd�de�ZGdd�dej�ZdS)�)�print_functionN)�git)�options)�	packaging)�basecs�eZdZdeddddejdd�fdedd	ddejdd�fd
edd	ddejdd�fdeddddejdd�fded
dddejdd�fded
d	ddejdd�fded
d	ddejdd�fded
dddejdd�fgZ�fdd�Zdd�Z	�Z
S)�SkipFileWritesZchangelog_option_trueZskip_changelog�True�SKIP_WRITE_GIT_CHANGELOGN�	ChangeLog)�
option_key�option_value�env_key�	env_value�pkg_func�filenameZchangelog_option_false�FalseZchangelog_env_trueZchangelog_both_trueZauthors_option_trueZskip_authors�SKIP_GENERATE_AUTHORS�AUTHORSZauthors_option_falseZauthors_env_trueZauthors_both_truecs�tt|���|�t���j|_tj�	tjj
�|_tj�|jd�|_
tj�|j
�sf|�d|j
�dStj�|j|j�|_t�|_|jdk	r�d|jf|j|j<|�t�|j|j��dS)N�.gitz*%s is missing; skipping git-related checks�	setup.cfg)�superr�setUp�
useFixture�fixtures�TempDir�path�	temp_path�os�abspath�curdir�root_dir�join�git_dir�existsZskipTestr�dict�option_dictrr�EnvironmentVariabler
r��self��	__class__��6/usr/lib/python3/dist-packages/pbr/tests/test_setup.pyrIs$�
��zSkipFileWrites.setUpcCsH|j|j|j|jd�|�tj�|j�|j	�
�tjkp@|j
dk	�dS)N)r"�dest_dirr%)rr"rr%�assertEqualrrr#rr�lowerrZTRUE_VALUESrr'r+r+r,�	test_skipZs��zSkipFileWrites.test_skip)�__name__�
__module__�__qualname__r$r�write_git_changelog�generate_authors�	scenariosrr0�
__classcell__r+r+r)r,r$s������������������#ra�7780758Break parser (tag: refs/tags/1_foo.1)
04316feMake python (refs/heads/review/monty_taylor/27519)
378261aAdd an integration test script.
3c373acMerge "Lib (HEAD, tag: refs/tags/2013.2.rc2, tag: refs/tags/2013.2, refs/heads/mile-proposed)
182feb3Fix pip invocation for old versions of pip. (tag: refs/tags/0.5.17)
fa4f46eRemove explicit depend on distribute. (tag: refs/tags/0.5.16)
d1c53ddUse pip instead of easy_install for installation.
a793ea1Merge "Skip git-checkout related tests when .git is missing"
6c27ce7Skip git-checkout related tests when .git is missing
451e513Bug fix: create_stack() fails when waiting
4c8cfe4Improve test coverage: network delete API (tag: refs/tags/(evil))
d7e6167Bug fix: Fix pass thru filtering in list_networks (tag: refs/tags/ev()il)
c47ec15Consider 'in-use' a non-pending volume for caching (tag: refs/tags/ev)il)
8696fbdImprove test coverage: private extension API (tag: refs/tags/ev(il)
f0440f8Improve test coverage: hypervisor list (tag: refs/tags/e(vi)l)
04984a5Refactor hooks file. (HEAD, tag: 0.6.7,b, tag: refs/tags/(12), refs/heads/master)
a65e8eeRemove jinja pin. (tag: refs/tags/0.5.14, tag: refs/tags/0.5.13)
cCs8|��s|S|�d�\}}}|�dd�}d�|||f�S)z=Convert post-1.8.1 git log format to pre-1.8.1 git log format�ztag: �)�strip�split�replacer!)�lineZsha�msgZrefnamer+r+r,�_make_old_git_changelog_formatxs
r?�
ccs|]}t|�VqdS�N)r?)�.0r=r+r+r,�	<genexpr>�s�rCcsDeZdZddeifddeifgZ�fdd�Zdd�Zdd	�Z�Z	S)
�GitLogsTestzpre1.8.3�	changelogz	post1.8.3cshtt|���|�t���j|_tj�	tjj
�|_tj�|jd�|_
|�t�d��|�t�d��dS)Nrrr	)rrDrrrrrrrrrr r!r"r&r'r)r+r,r�s��zGitLogsTest.setUpc	s0��t��fdd���tj�j�jd�ttj	�
�jd�d���}|��}��d|���d|���d|���d	|���d
|���
d|���
d|���
d
|���
d|���
d|���
d|���
d|���
d|���
d|���
d|���
d|���
d|���
d|�W5QRXdS)Ncsdt�j�d��iS)N�stdoutzutf-8)�BytesIOrE�encode)�_r'r+r,�<lambda>�s�z6GitLogsTest.test_write_git_changelog.<locals>.<lambda>�r"r-r
�rz2013.2z0.5.17z------zRefactor hooks filez+Bug fix: create\_stack() fails when waitingzRefactor hooks file.Z182feb3zreview/monty_taylor/27519z0.5.13z0.6.7Z12z(evil)zev()ilzev(ilzev)ilze(vi)lzMerge "z1\_foo.1)rrZ	FakePopenrr4r"r�openrrr!�read�assertIn�assertNotIn)r(Zch_fhZchangelog_contentsr+r'r,�test_write_git_changelog�s6��z$GitLogsTest.test_write_git_changelogc	s&d}d}d}d|}d|j}d|j}d}||||||ji�|jtj�|jd�g�|�t�d	�fd
d����fdd
�}|�t�d|��t	tj�|jd�d��}	|	�
d|�W5QRXtj|j|jd�t	tj�|jd�d��8}	|	�
�}
|�||
k�|�||
k�|�||
k�W5QRXdS)NzFoo Foo <email@foo.com>zBar Bar <email@bar.com>zFoo Bar <foo@bar.com>zCo-authored-by: z)git --git-dir=%s log --format=%%aN <%%aE>zgit --git-dir=%s logzgit rev-parse --show-toplevelz
AUTHORS.inzos.path.existscstj�|��kSrA)rrr)r)�exist_filesr+r,rJ��z3GitLogsTest.test_generate_authors.<locals>.<lambda>cs�d�|�S)N� )r!)�cmd�kwargs)�cmd_mapr+r,�_fake_run_shell_command�szBGitLogsTest.test_generate_authors.<locals>._fake_run_shell_commandzpbr.git._run_shell_command�wz%s
rKrrL)r"r rrr!rrr�MonkeyPatchrM�writerr5rN�
assertTrue)r(Z
author_oldZ
author_newZ	co_authorZco_author_byZgit_log_cmdZgit_co_log_cmdZ
git_top_levelrXZauth_fhZauthorsr+)rWrRr,�test_generate_authors�sN��
��
���z!GitLogsTest.test_generate_authors)
r1r2r3�_old_git_changelog_content�_changelog_contentr6rrQr]r7r+r+r)r,rD�s

�
rDc@seZdZdgZdS)�
_SphinxConfigZfooN)r1r2r3Z	man_pagesr+r+r+r,r`�sr`cseZdZ�fdd�Z�ZS)�BaseSphinxTestcsNtt|���ddl}g|jj_d|jj_|�t	�
ddd���|�t	�
ddd���|�t	�
dt��|�t	�
dd	d���|�t	�
d
dd���ddlm
}|��|_d
|j_dddgi|jjd<t	�ddddg�}|�|�|�t�|j��i|jjd<t|d��rd|jjdd<t|d��rJ|j�rJ|jjd}d|jf|d<dS)Nr�"sphinx.application.Sphinx.__init__c_sdSrAr+��a�kwr+r+r,rJ�rSz&BaseSphinxTest.setUp.<locals>.<lambda>�sphinx.application.Sphinx.buildc_sdSrAr+rcr+r+r,rJ�rS� sphinx.application.Sphinx.config� sphinx.config.Config.init_valuescWsdSrAr+�rdr+r+r,rJ�rS�sphinx.config.Config.__init__cWsdSrAr+rir+r+r,rJ�rS��dist��fake_package�
source_dirrd�.�build_sphinxrn�zfake_module.pyrS�z"another_fake_module_for_testing.pyrS�zfake_private_module.pyrS�pbr�excludes)r�Xfake_package.fake_private_module
fake_package.another_fake_*
fake_package.unknown_moduleZautodoc_exclude_modules�has_optr�autodoc_index_modules)rrar�sphinx.application�application�Sphinx�
messagelog�
statuscoderrrZr`�	distutilsrl�Distribution�distr�packages�command_options�
PythonPackager�DiveDir�hasattrrx�autodoc)r(�sphinxrl�pkg_fixturerr)r+r,r�sZ

�����
���
zBaseSphinxTest.setUp)r1r2r3rr7r+r+r)r,ra�srac
@s�eZdZdedddd�fdeddddd�fdedd	dd�fd
edddd�fd
edddd�fgZdd�Zdd�Zdd�Zdd�ZdS)�BuildSphinxTestZtrue_autodoc_capsTr)rxr��has_autodocZtrue_autodoc_caps_with_excludesrw)rxr�r�rvZtrue_autodoc_lower�trueZ
false_autodocrFZ
no_autodoccCs�t�|j�}|��|�tj�d�|jk�|�tj�d�|jk�|jrTt	|d�r\|j
}n|j}|tj�d��|tj�d��dS)N�api/autoindex.rst� api/fake_package.fake_module.rstrv�(api/fake_package.fake_private_module.rst�4api/fake_package.another_fake_module_for_testing.rst)r�
LocalBuildDocr��runr\rrr#r�r�ZassertFalse)r(�	build_docZ	assertionr+r+r,�test_build_doc&s2��������zBuildSphinxTest.test_build_doccCs�t�|j�}|��|�dt|j��|�d|j�t�|j�}d|_|��|�d|j�t�|j�}d|_|��|�dt|j��|�d|j�t�|j�}d|_|��|�d|j�|�d|j�|�d|j�dS)N��htmlr9Zmanzhtml,man,doctestZdoctest)rr�r��finalize_optionsr.�len�buildersrO�r(r�r+r+r,�test_builders_config:s&z$BuildSphinxTest.test_builders_configcCs||jrdd|jfi|jjd<d|jjdd<t�|j�}|�d|j�|�d|j�|�	�|�d|j�|�d|j�dS)	Nryrru)�command line�non-existing-builderrq�builderr�r�)
rxr�r�r�rr�rPr�rOr�r�r+r+r,�test_cmd_builder_overrideVs�z)BuildSphinxTest.test_cmd_builder_overridecCsV|jrdd|jfi|jjd<d|jjdd<t�|j�}|��|�ddg|j�dS)	Nryrru)r�zbuilder1,builder2rqr�Zbuilder1Zbuilder2)	rxr�r�r�rr�r�r.r�r�r+r+r,�+test_cmd_builder_override_multiple_buildersjs�z;BuildSphinxTest.test_cmd_builder_override_multiple_buildersN)	r1r2r3r$r6r�r�r�r�r+r+r+r,r�s,�������r�cs,eZdZ�fdd�Zdd�Zdd�Z�ZS)�APIAutoDocTestcs"tt|���ddl}g|jj_d|jj_|�t	�
ddd���|�t	�
ddd���|�t	�
dt��|�t	�
dd	d���|�t	�
d
dd���ddlm
}|��|_d
|j_dddgi|jjd<|jjd|_t	�ddddg�}|�|�|�t�|j��|jj�di�|_d|jd<dS)Nrrbc_sdSrAr+rcr+r+r,rJ�rSz&APIAutoDocTest.setUp.<locals>.<lambda>rfc_sdSrAr+rcr+r+r,rJ�rSrgrhcWsdSrAr+rir+r+r,rJ�rSrjcWsdSrAr+rir+r+r,rJ�rSrkrmrordrprqrnrrrsrtru)rrry)rr�rrzr{r|r}r~rrrZr`rrlr�r�r�r�Zsphinx_optionsr�rr��
setdefault�pbr_options)r(r�rlr�r)r+r,r|sT

�����
���
zAPIAutoDocTest.setUpcCszt�|j�}|��td|j�td|jj�|�tj	�
d��|�tj	�
d��|�tj	�
d��|�tj	�
d��dS)N�PBR OPTIONS:�DISTR OPTIONS:r�r�r�r�)rr�r�r��printr�r�r\rrr#r�r+r+r,�test_default_api_build_dir�s ����z)APIAutoDocTest.test_default_api_build_dircCsrd|jd<t�|j�}|��td|j�td|jj�|�tj	�
d��|�tj	�
d��|�tj	�
d��dS)N)Nzcontributor/apiZapi_doc_dirr�r�zcontributor/api/autoindex.rstz,contributor/api/fake_package.fake_module.rstz4contributor/api/fake_package.fake_private_module.rst)r�rr�r�r�r�r�r\rrr#r�r+r+r,�test_different_api_build_dir�s

���z+APIAutoDocTest.test_different_api_build_dir)r1r2r3rr�r�r7r+r+r)r,r�zs$r�)Z
__future__rr�	cStringIO�io�StringIOrG�ImportErrorrrurrrZ	pbr.testsrZBaseTestCaserr_r?r!r;r^rD�objectr`rar�r�r+r+r+r,�<module>s.
@

�[.f