Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/test/__pycache__/test_sysconfig.cpython-34.pyc

�
g f�A�@s<ddlZddlZddlZddlZddlZddlmZddlmZmZm	Z	m
Z
mZmZm
Z
ddlZddlmZmZmZmZmZmZmZmZmZmZmZddlZGdd�dej�ZGdd�dej�Zd	d
�Zedkr8e�ndS)�N)�copy)�run_unittest�TESTFN�unlink�check_warnings�captured_stdout�skip_unless_symlink�
change_cwd)�	get_paths�get_platform�get_config_vars�get_path�get_path_names�_INSTALL_SCHEMES�_get_default_scheme�_expand_vars�get_scheme_names�get_config_var�_maincs�eZdZ�fdd�Z�fdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zedd��Zdd�Zdd�Zejejdkd �d!d"��Zejejd#kd$�d%d&��Zd'd(�Zd)d*�Zejejd+�d,kd-�d.d/��Zejejd+�d,kd-�d0d1��Zejejd+�d,kd-�d2d3��Z �S)4�
TestSysConfigcsVtt|�j�tjdd�|_ttd�rVtj|_tj�|_	nd|_|j
d�|jt_tj|_tj
|_
tj|_tj|_tjj|_tjj|_tjj|_tjttj�f|_g|_g|_xMdD]E}|tjkr>|jj|tj|f�q	|jj|�q	WdS)	N�uname���MACOSX_DEPLOYMENT_TARGET�PATH)r)rrrrr)zMACOSX_DEPLOYMENT_TARGETzPATH)�superr�setUp�sys�path�sys_path�hasattr�osr�_uname�
_set_uname�
_get_uname�name�platform�version�sep�join�isabs�
splitdrive�	sysconfig�_CONFIG_VARSr�_config_vars�_added_envvars�_changed_envvars�environ�append)�self�var)�	__class__��8/opt/alt/python34/lib64/python3.4/test/test_sysconfig.pyrs,	
		
 zTestSysConfig.setUpcs:|jtjdd�<|j�|jdk	r>|jt_nt`|jt_|jt_|jt_|j	t_	|j
tj_
|jtj_|jtj_|j
dt_tjj�tjj|j
d�x$|jD]\}}|tj|<q�Wx$|jD]}tjj|d�qWtt|�j�dS)Nr�)rrr�_cleanup_testfnrr!r%r&r'r(r)r*r+r.r,r-�clear�updater0r1r/�poprr�tearDown)r3r4�value)r5r6r7r=0s(

zTestSysConfig.tearDowncCstj|�|_dS)N)r!�uname_resultr")r3rr6r6r7r#HszTestSysConfig._set_unamecCs|jS)N)r")r3r6r6r7r$KszTestSysConfig._get_unamecCsNt}tjj|�r(tj|�n"tjj|�rJtj|�ndS)N)rr!r�isfile�remove�isdir�shutilZrmtree)r3rr6r6r7r9Ns
zTestSysConfig._cleanup_testfncCs|jt�tj�dS)N)�assertEqualrr,�_SCHEME_KEYS)r3r6r6r7�test_get_path_namesUsz!TestSysConfig.test_get_path_namescCsYt�}t�}t|d�}t|j��}t|j��}|j||�dS)N)r
rr�sorted�itemsrD)r3�schemeZdefault_scheme�wantedr6r6r7�test_get_pathsXs		zTestSysConfig.test_get_pathscCs9x2tD]*}x!t|D]}t||�}qWqWdS)N)rr
)r3rIr%�resr6r6r7�
test_get_path`s
zTestSysConfig.test_get_pathcCs*t�}|j|t�|j|�dS)N)rZassertIsInstance�dict�
assertTrue)r3Zcvarsr6r6r7�test_get_config_varsfs	z"TestSysConfig.test_get_config_varscCs<dt_dt_dt_|jt�d�dt_dt_dt_|jt�d�dt_dt_dt_|jt�d�dt_d	t_d
t_|jd3�tj	t
��dt
�d<dt
�d<tj}z<dt_|jt�d�dt_|jt�d�Wd|t_X|jd4�tj	t
��dt
�d<dt
�d<tj}z<dt_|jt�d�dt_|jt�d�Wd|t_Xtj	t
��dt
�d<dt
�d<|jt�d�tj	t
��dt
�d<|jt�d�tj	t
��d t
�d<|jt�d!�tj	t
��d"t
�d<|jt�d#�tj	t
��d$t
�d<|jt�d%�xFd5D]>}tj	t
��d)|t
�d<|jt�d*|�q�Wdt_d+t_d,t_|jd6�|jt�d2�dS)7N�ntz>2.4.4 (#71, Oct 18 2006, 08:34:43) [MSC v.1310 32 bit (Intel)]�win32z>2.4.4 (#71, Oct 18 2006, 08:34:43) [MSC v.1310 32 bit (Amd64)]z	win-amd64z@2.4.4 (#71, Oct 18 2006, 08:34:43) [MSC v.1310 32 bit (Itanium)]zwin-ia64�posixzU2.5 (r25:51918, Sep 19 2006, 08:49:13) 
[GCC 4.0.1 (Apple Computer, Inc. build 5341)]�darwin�Darwin�macziade�8.11.1�]Darwin Kernel Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386�PowerPCz10.3rzF-fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes�CFLAGSi���zmacosx-10.3-ppcl����zmacosx-10.3-ppc64�i386zmacosx-10.3-i386zmacosx-10.3-x86_64z10.4zy-arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk  -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3zmacosx-10.4-fatz|-arch x86_64 -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk  -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3zmacosx-10.4-intelz�-arch x86_64 -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk  -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3zmacosx-10.4-fat3z�-arch ppc64 -arch x86_64 -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk  -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3zmacosx-10.4-universalz}-arch x86_64 -arch ppc64 -isysroot /Developer/SDKs/MacOSX10.4u.sdk  -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3zmacosx-10.4-fat64�ppc�x86_64�ppc64zm-arch %s -isysroot /Developer/SDKs/MacOSX10.4u.sdk  -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3zmacosx-10.4-%szV2.3.5 (#1, Jul  4 2007, 17:28:59) 
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)]Zlinux2�Linux�aglae�2.6.21.1dedibox-r7� #1 Mon Apr 30 17:25:38 CEST 2007�i686z
linux-i686)rUrVrWrXrY)rUrVrWrXr[)r\r[r]r^)r_r`rarbrc)r!r%rr'r&rDrr#�_osx_supportZ_remove_original_valuesr�maxsize)r3ZmaxintZarchr6r6r7�test_get_platformks�												

			


			







			zTestSysConfig.test_get_platformcCs,tj�}|jtjj|�|�dS)N)r,�get_config_h_filenamerOr!rr@)r3�config_hr6r6r7�test_get_config_h_filename�sz(TestSysConfig.test_get_config_h_filenamecCsd}|jt�|�dS)NrQ�nt_user�osx_framework_user�
posix_home�posix_prefix�
posix_user)zntznt_userzosx_framework_userz
posix_homezposix_prefixz
posix_user)rDr)r3rJr6r6r7�test_get_scheme_names�sz#TestSysConfig.test_get_scheme_namescCs�tjdkrAdjtjjtj�tjd�tjd<ndd�}tjjtj�}tjj	t
�}tj||�z |j||�||��Wdt
|�XdS)NrRz{};{}rcSs:|ddg}tj|dtjdtj�}|j�S)Nz-cz1import sysconfig; print(sysconfig.get_platform())�stdout�env)�
subprocess�Popen�PIPEr!r1�communicate)�python�cmd�pr6r6r7�get�s	!z'TestSysConfig.test_symlink.<locals>.get)rr&�formatr!r�dirname�
executabler1�realpath�abspathr�symlinkrDr)r3ry�real�linkr6r6r7�test_symlink�s, zTestSysConfig.test_symlinkcCs�td�}td�}tjtjk}x�d
D]�}t|d�}|r|jtjtj�}|jtjtj�}nEtjtjkr�|jtjtj�}|jtjtj�}nt|d�}|j||j||d	��q1WdS)N�base�userbase�stdlib�
platstdlib�purelib�platlibrmrnr8)zstdlibz
platstdlibzpurelibzplatlib)	rr�base_prefix�base_exec_prefixr
�replace�exec_prefix�prefixrD)r3r��userZadaptr%Zglobal_pathZ	user_pathr6r6r7�test_user_similars
zTestSysConfig.test_user_similarc
CsEt��}t�WdQX|jt|j�jd��dk�dS)N�
r)rrrO�len�getvalue�split)r3�outputr6r6r7�	test_mains
zTestSysConfig.test_mainrRzDoes not apply to WindowscCs2tjd�}tjd�}|j||�dS)N�LDFLAGS�LDSHARED)r,rZassertIn)r3ZldflagsZldsharedr6r6r7�test_ldshared_value#sz!TestSysConfig.test_ldshared_valuerTztest only relevant on MacOSXcCsVtj�}tjj�}d|kr1|d=ntjtjddgdtj	dtj
d|�}|j�dj�}|j
d�}|j�}|j|d�|j||�tjj�}d	|d<tjtjddgdtj	dtj
d|�}|j�dj�}|j
d�}|j�}|j|d�|j||�dS)
Nrz-cz1import sysconfig; print(sysconfig.get_platform())rp�stderrrqrzutf-8z10.1)r,rr!r1rrrrsrr|rtZDEVNULLru�strip�decode�waitrD)r3Zmy_platformrqrxZ
test_platformZstatusr6r6r7�test_platform_in_subprocess*s8
					
					z)TestSysConfig.test_platform_in_subprocesscCs�tjd�}|jtjj|�|�|jtjj|�|�tjr�tjj|dd�}|jtjj	|�|�|jtj
|��nLtjdkr�tjjtj
��}tjj|�}|j||�ndS)N�srcdir�IncludezPython.hrS)r,rrOr!rr*rB�
_PYTHON_BUILDr)�exists�_is_python_source_dirr%r{�get_makefile_filenamer}rD)r3r�ZPython_hZmakefile_dirr6r6r7�test_srcdirUs	zTestSysConfig.test_srcdirc	CsHtjd�}ttj��tjd�}WdQX|j||�dS)Nr�)r,rr	r!�pardirrD)r3r�Zsrcdir2r6r6r7�test_srcdir_independent_of_cwdhsz,TestSysConfig.test_srcdir_independent_of_cwd�
EXT_SUFFIXNz!EXT_SUFFIX required for this testcCs|jttjd�dS)N�SO)ZassertWarns�DeprecationWarningr,r)r3r6r6r7�test_SO_deprecationps	z!TestSysConfig.test_SO_deprecationcCs?tdtf��'|jtjd�tjd��WdQXdS)Nrr�r�)rr�rDr,r)r3r6r6r7�
test_SO_valuevszTestSysConfig.test_SO_valuecCs9tj�}|j|d�|j|d|d�dS)Nr�r�)r,rZassertIsNotNonerD)r3�varsr6r6r7�test_SO_in_vars}szTestSysConfig.test_SO_in_vars)!�__name__�
__module__�__qualname__rr=r#r$r9rFrKrMrPrfrirorr�r�r��unittest�skipIfrr&r�Z
skipUnlessr�r�r�r,rr�r�r�r6r6)r5r7rs2}''+rc@sFeZdZejejjd�d�dd��Zdd�Z	dS)�
MakefileTests�winzTest is not Windows compatiblecCs,tj�}|jtjj|�|�dS)N)r,r�rOr!rr@)r3�makefiler6r6r7�test_get_makefile_filename�sz(MakefileTests.test_get_makefile_filenamecCs�|jtt�ttd��W}tdd|�tdd|�tdd|�tdd|�tdd|�WdQXtjt�}|j|idd	6d
d6dd
6dd6dd6�dS)N�wz
var1=a$(VAR2)�filez
VAR2=b$(var3)zvar3=42zvar4=$/invalidzvar5=dollar$$5Zab42Zvar1Zb42ZVAR2�*Zvar3z	$/invalidZvar4zdollar$5Zvar5)Z
addCleanuprr�open�printr,�_parse_makefilerD)r3r�r�r6r6r7�test_parse_makefile�sz!MakefileTests.test_parse_makefileN)
r�r�r�r�r�rr&�
startswithr�r�r6r6r6r7r��sr�cCsttt�dS)N)rrr�r6r6r6r7r��sr��__main__) r�rr!rrrCrZtest.supportrrrrrrr	r,r
rrr
rrrrrrrrdZTestCaserr�r�r�r6r6r6r7�<module>s4L�t