Your IP : 216.73.217.129


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.pyc



��Yf�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�7/opt/alt/python35/lib64/python3.5/test/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�PIPEZcommunicate)�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)rr/�save_version�_git�save_gitr�
save_platform)rrrr	�setUpCszPlatformTest.setUpcCs(|jt_|jt_|jt_dS)N)r5rr/r7r6r8r)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.2r6r������r<r=r>r>r?r@rA�r;rt�rCrDr>r>r>r>rE�rBrv�rCrGr>r>r>r>rE�rFrx�r<r=r>r>rIrJrK�rHrz�r<r=r>r>rIrMrK�rLr|�r<r=r>r>rIrMrK�rNr~�r<r=r>r>rIrMrK�rOr��r<r=r>r>rIrQrK�rPr��r<r=r>r>rIr>rK�rRr��r<r=r>r>rIr>rK�rSr��r<r=r>r>rIr>rK�rTr�)rurwryr{r}rr�r�r�r�r�)r<rUrV�rXrY)r<rWrUrVr�rZ)r[Nr\�r>r>)rCr]r>r>r�r^)r_Nr\�r>r>)rCrWr>r>r�r`)raNr\�r>r>)rCrbr>r>r�rc�rerfrg)rdr�rh�rjrk)rerirfrgr�rh)rlrfrm�rmrk)rlrnrfrmr�r>)rZ_sys_versionr#r8�itemsrr/�hasattrr6Zpython_implementationZpython_versionZ
python_branchZpython_revisionZpython_buildZpython_compiler)r�input�output�namer/ZbranchZrevisionZbuildnoZ	builddateZcompilerZsys_versionsZversion_tagZ
subversionZsys_platform�inforrr	�test_sys_versionMs~$#					zPlatformTest.test_sys_versioncCs+tjtj�tj�tj��}dS)N)rZsystem_aliasr)r-r/)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)Nrrorprqrrrs)r�uname�
assertTrue�anyr#r)r+r-r/r1r3)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-r/r1r3rrr	�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:ror�.�0r>�littlerp�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rrrrr	�
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�)rrrrr�r��simplefilter�DeprecationWarningr��readr�r�r#�writeZassertIsNotNonerr�r�)	rZ	mswindowsZcommandrZhello�data�stdinZret�
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)�tempfileZTemporaryDirectoryrr�join�openrrZpatchr�r�r�r�r�linux_distributionr#)rZtempdir�filename�fZdistnamer/Zdistidrrr	� test_linux_distribution_encodingJs
z-PlatformTest.test_linux_distribution_encodingN)"�__name__�
__module__�__qualname__r
rZskip_unless_symlinkr'r(r*r,r.r0r2r4r9r:r�r�r��unittestZ
skipUnlessrrr�r�r�r�r�r�r�r�r�rr
rrrr	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rrrrr�ZtestrZTestCaserrr�mainrrrr	�<module>s�U