Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_platform.cpython-35.opt-2.pyc



���]�9�@s�ddlmZddlZddlZddlZddlZddlZddlZddlZddlm	Z	Gdd�dej
�ZGdd�dej
�Ze
dkr�ej�dS)	�)�mockN)�supportc@sreZdZdd�Zejdd��Zdd�Zdd�Zd	d
�Z	dd�Z
d
d�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zejejjd�d�dd ��Zd!d"�Zd#d$�Zd%d&�Zejejd'kd(�d)d*��Zd+d,�Zd-d.�Zd/d0�Zd1d2�Z d3d4�Z!d5S)6�PlatformTestcCstj�}dS)N)�platformZarchitecture)�self�res�r�2/opt/alt/python35/lib64/python3.5/test_platform.py�test_architecture
szPlatformTest.test_architecturecCs�tjdkrdd�}|j|ttj��djtjjtj	�tjd�tjd<tjjtj	�tjd<dd�}tjj
tj	�}tjjtj
�}tj||�z |j||�||��Wdtj|�XdS)	N�win32cSs!tjj�tjj|�dS)N)�os�environ�clear�update)Zold_envrrr	�restore_environs
zCPlatformTest.test_architecture_via_symlink.<locals>.restore_environz{};{}ZPath�
PYTHONPATHcSs1|ddg}tj|dtj�}|j�S)Nz-cz/import platform; print(platform.architecture())�stdout)�
subprocess�Popen�PIPE�communicate)�python�cmd�prrr	�gets	z7PlatformTest.test_architecture_via_symlink.<locals>.get)�sysrZ
addCleanup�dictrr
�format�path�dirname�
executable�realpath�abspathrZTESTFN�symlink�assertEqual�remove)rrr�real�linkrrr	�test_architecture_via_symlinks) z*PlatformTest.test_architecture_via_symlinkcCs8x1dD])}x dD]}tj||�}qWqWdS)NFT)FT)FT)r)rZaliasedZterserrrr	�
test_platform,s

zPlatformTest.test_platformcCstj�}dS)N)r�system)rrrrr	�test_system1szPlatformTest.test_systemcCstj�}dS)N)r�node)rrrrr	�	test_node4szPlatformTest.test_nodecCstj�}dS)N)r�release)rrrrr	�test_release7szPlatformTest.test_releasecCstj�}dS)N)r�version)rrrrr	�test_version:szPlatformTest.test_versioncCstj�}dS)N)r�machine)rrrrr	�test_machine=szPlatformTest.test_machinecCstj�}dS)N)r�	processor)rrrrr	�test_processor@szPlatformTest.test_processorcCs(tj|_tj|_tj|_dS)N)rr0�save_version�_git�save_gitr�
save_platform)rrrr	�setUpCszPlatformTest.setUpcCs(|jt_|jt_|jt_dS)N)r6rr0r8r7r9r)rrrr	�tearDownHszPlatformTest.tearDowncCs�x]dTD]U\}}tj|�\}}}}}}}	|j||dd|||	f|�qWddU|jfdWdXdZd[d]d^d`dbddd3de|jfdgi}
x
|
j�D]�\\}}}
}|t_|dkr�ttd7�r�t`n	|t_|
dk	r|
t_|jtj	�|d8�|jtj
�|d9�|jtj�|d:�|jtj�|d;�|jtj
�|d<�|jtj�|d=�q�WdS)hN�C2.4.3 (#1, Jun 21 2006, 13:54:21) 
[GCC 3.3.4 (pre 3.3.5 20040809)]�CPython�2.4.3��1�Jun 21 2006 13:54:21�GCC 3.3.4 (pre 3.3.5 20040809)�)IronPython 1.0.60816 on .NET 2.0.50727.42�
IronPython�	1.0.60816�.NET 2.0.50727.42�4IronPython 1.0 (1.0.61005.1977) on .NET 2.0.50727.42�1.0.0�"2.4.3 (truncation, date, t) 
[GCC]�
truncation�date t�GCC�!2.4.3 (truncation, date, ) 
[GCC]�date� 2.4.3 (truncation, date,) 
[GCC]�2.4.3 (truncation, date) 
[GCC]�2.4.3 (truncation, d) 
[GCC]�d�2.4.3 (truncation, ) 
[GCC]�2.4.3 (truncation,) 
[GCC]�2.4.3 (truncation) 
[GCC]zX2.6.1 (r261:67515, Dec  6 2008, 15:26:00) 
[GCC 4.0.1 (Apple Computer, Inc. build 5370)]�	tags/r261�67515�2.6.1�
r261:67515�Dec  6 2008 15:26:00�+GCC 4.0.1 (Apple Computer, Inc. build 5370)�/IronPython 2.0 (2.0.0.0) on .NET 2.0.50727.3053�cli�2.0.0�.NET 2.0.50727.3053�=2.6.1 (IronPython 2.6.1 (2.6.10920.0) on .NET 2.0.50727.1433)�.NET 2.0.50727.1433�@2.7.4 (IronPython 2.7.4 (2.7.0.40) on Mono 4.0.30319.1 (32-bit))�2.7.4�Mono 4.0.30319.1 (32-bit)�^2.5 (trunk:6107, Mar 26 2009, 13:02:18) 
[Java HotSpot(TM) Client VM ("Apple Computer, Inc.")]�Jython�trunk�6107�java1.5.0_16�2.5.0�
trunk:6107�Mar 26 2009z12.5.2 (63378, Mar 26 2009, 18:03:29)
[PyPy 1.0.0]�PyPy�63378�2.5.2r7r������r=r>r?r?r@rArB�r<ru�rDrEr?r?r?r?rF�rCrw�rDrHr?r?r?r?rF�rGry�r=r>r?r?rJrKrL�rIr{�r=r>r?r?rJrNrL�rMr}�r=r>r?r?rJrNrL�rOr�r=r>r?r?rJrNrL�rPr��r=r>r?r?rJrRrL�rQr��r=r>r?r?rJr?rL�rSr��r=r>r?r?rJr?rL�rTr��r=r>r?r?rJr?rL�rUr�)rvrxrzr|r~r�r�r�r�r�r�)r=rVrW�rYrZ)r=rXrVrWr�r[)r\Nr]�r?r?)rDr^r?r?r�r_)r`Nr]�r?r?)rDrXr?r?r�ra)rbNr]�r?r?)rDrcr?r?r�rd�rfrgrh)rer�ri�rkrl)rfrjrgrhr�ri)rmrgrn�rnrl)rmrorgrnr�r?)rZ_sys_versionr$r9�itemsrr0�hasattrr7Zpython_implementationZpython_versionZ
python_branchZpython_revisionZpython_buildZpython_compiler)r�input�output�namer0ZbranchZrevisionZbuildnoZ	builddateZcompilerZsys_versionsZversion_tagZ
subversionZsys_platform�inforrr	�test_sys_versionMs~$#					zPlatformTest.test_sys_versioncCs+tjtj�tj�tj��}dS)N)rZsystem_aliasr*r.r0)rrrrr	�test_system_alias�s		zPlatformTest.test_system_aliascCs�tj�}|jt|��|j|d|j�|j|d|j�|j|d|j�|j|d|j�|j|d|j	�|j|d|j
�dS)Nrrprqrrrsrt)r�uname�
assertTrue�anyr$r*r,r.r0r2r4)rrrrr	�
test_uname�szPlatformTest.test_uname�winzwindows only testcCs�z�tj���}d|kr%|d=d|d<dt_tj�\}}}}}}|j|d�d|d<dt_tj�\}}}}}}|j|d�WdQRXWddt_XdS)NZPROCESSOR_ARCHITEW6432ZfooZPROCESSOR_ARCHITECTUREZbar)rZEnvironmentVarGuardrZ_uname_cacher�r$)rr
r*r,r.r0r2r4rrr	�test_uname_win32_ARCHITEW6432�s
	
	z*PlatformTest.test_uname_win32_ARCHITEW6432cCs2tj�}tjdkr.|jt|��dS)N�java)rZjava_verrr��all)rrrrr	�
test_java_ver�szPlatformTest.test_java_vercCstj�}dS)N)rZ	win32_ver)rrrrr	�test_win32_ver�szPlatformTest.test_win32_vercCsGtj�}tj�jdkrCtjdd�}d}x4|D],}|jd�r@|j�j�d}Pq@W|j	�|j
|dk�|djd�}|jd�}t|�t|�}|dkr�|jdg|�|j
||�|j
|dd�tjd
kr/|j|dd�n|j
|dd�dS)NZDarwinZsw_vers�rzProductVersion:rpr�.�0r?�littlerq�i386�x86_64ZPowerPC���)r?r?r?)r�r�)r�mac_verr�r*r�popen�
startswith�strip�split�closeZassertFalse�len�extendr$r�	byteorderZassertIn)rr�fdZreal_ver�lnZresult_listZexpect_listZlen_diffrrr	�test_mac_ver�s(

zPlatformTest.test_mac_ver�darwinz
OSX only testcCsptj�}|dkr4tj�}tjd�n8tj|d�\}}|j||�|j|d�dS)Nr)r�forkrr��_exit�waitpidr$)r�pidr�Zcpid�stsrrr	�test_mac_ver_with_fork�sz#PlatformTest.test_mac_ver_with_forkcCs7tj��$tjddt�tj�}WdQRXdS)N�ignorez?dist\(\) and linux_distribution\(\) functions are deprecated .*)�warnings�catch_warnings�filterwarnings�PendingDeprecationWarningr�dist)rrrrr	�	test_dists
zPlatformTest.test_distcCsfddl}|jjtj�rJ|jjtjd�rJtjd}n	tj}tj|�}dS)Nrz.exe)rr�isdirrr �existsrZlibc_ver)rrr rrrr	�
test_libc_vers	zPlatformTest.test_libc_verc
Cs4x-d5D]%\}}|jtj|�|�qWdS)6N�SuSE Linux 9.3 (x86-64)�SuSE Linux �9.3�x86-64�SUSE LINUX 10.1 (X86-64)�SUSE LINUX �10.1�X86-64�SUSE LINUX 10.1 (i586)�i586� Fedora Core release 5 (Bordeaux)�Fedora Core�5�Bordeaux�"Red Hat Linux release 8.0 (Psyche)�
Red Hat Linux�8.0�Psyche� Red Hat Linux release 9 (Shrike)�9�Shrike�+Red Hat Enterprise Linux release 4 (Nahant)�Red Hat Enterprise Linux�4�Nahant�CentOS release 4�CentOS�Rocks release 4.2.1 (Cydonia)�Rocks�4.2.1�Cydoniar?�r�r�r��r�r��r�r�r��r�r��r�r�r��r�r��r�r�r��r�r��r�r�r��r�r��r�r�r��r�r��r�r�r��r�r��r�r�N�r�r��r�r�r��r�r��r?r?r?�r?r�)
r�r�r�r�r�r�r�r�r�r�)r$rZ_parse_release_file)rr�r�rrr	�test_parse_release_filesz$PlatformTest.test_parse_release_filec	 Csvtjdk}|r*djtj�}ndjtj�}tj��Ztjdt�tj|��3}|j	�j
�}|j�|j|d�WdQRXWdQRXd}|r�d}nd}|jtj�}tj���tjdt�tj|d	��g}|j
|�}|j�}|j|�tjd
krD|}n
|d?}|j|t|��WdQRXWdQRXdS)Nrz"{}" -c "print('Hello')"z'{}' -c 'print("Hello")'r�ZHelloZplopz<"{}" -c "import sys; data=sys.stdin.read(); exit(len(data))"z<'{}' -c 'import sys; data=sys.stdin.read(); exit(len(data))'�w�nt�)rrrr r�r��simplefilter�DeprecationWarningr��readr�r�r$�writeZassertIsNotNonerr�r�)	rZ	mswindowsZcommandrZhello�data�stdin�ret�
returncoderrr	�
test_popen*s2

	

	
zPlatformTest.test_popenc Cs�tj���}tjj|d�}t|ddd��}|jd�WdQRXtjd|��Qt	j
��-t	jddt�t
j�\}}}WdQRX|j|d	�WdQRX|j|d
�|j|d�WdQRXdS)Nzfedora-releaser��encodingzutf-8u)Fedora release 19 (Schrödinger’s Cat)
zplatform._UNIXCONFDIRr�z?dist\(\) and linux_distribution\(\) functions are deprecated .*ZFedoraZ19uSchrödinger’s Cat)�tempfile�TemporaryDirectoryrr�join�openrrZpatchr�r�r�r�r�linux_distributionr$)r�tempdir�filename�fZdistnamer0Zdistidrrr	� test_linux_distribution_encodingJs
z-PlatformTest.test_linux_distribution_encodingN)"�__name__�
__module__�__qualname__r
rZskip_unless_symlinkr(r)r+r-r/r1r3r5r:r;r�r�r��unittestZ
skipUnlessrrr�r�r�r�r�r�r�r�r�rrrrrr	rs0W
*!'

 rc@s(eZdZdd�Zdd�ZdS)�DeprecationTestc
Cs@|jt��}tj�WdQRX|jt|j�d�dS)NzFdist() and linux_distribution() functions are deprecated in Python 3.5)�assertWarnsr�rr�r$�str�warning)r�cmrrr	�test_dist_deprecationbsz%DeprecationTest.test_dist_deprecationc
Cs@|jt��}tj�WdQRX|jt|j�d�dS)NzFdist() and linux_distribution() functions are deprecated in Python 3.5)rr�rr
r$rr)rrrrr	�#test_linux_distribution_deprecationisz3DeprecationTest.test_linux_distribution_deprecationN)rrrrrrrrr	r`sr�__main__)rrrrrrr	r�ZtestrZTestCaserrr�mainrrrr	�<module>s�U