Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/distutils/tests/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/distutils/tests/__pycache__/test_sysconfig.cpython-34.pyo

�
i f� �@s�dZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZddl
mZmZmZGdd�dejej�Zd	d
�Zedkr�ee��ndS)zTests for distutils.sysconfig.�N)�	sysconfig)�get_default_compiler)�support)�TESTFN�run_unittest�check_warningscs�eZdZ�fdd�Z�fdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zej
e�dkd�dd��Zdd�Zdd�Zdd�Zejejd�d�dd ��Zejejd!�d"kd#�d$d%��Zejejd!�d"kd#�d&d'��Zejejd!�d"kd#�d(d)��Zd*d+�Z�S),�SysconfigTestCasecs tt|�j�d|_dS)N)�superr�setUp�makefile)�self)�	__class__��C/opt/alt/python34/lib64/python3.4/distutils/tests/test_sysconfig.pyr
szSysconfigTestCase.setUpcsC|jdk	r"tj|j�n|j�tt|�j�dS)N)r�os�unlink�cleanup_testfnr	r�tearDown)r)r
rrrs
zSysconfigTestCase.tearDowncCsHtjjt�r"tjt�n"tjjt�rDtjt�ndS)N)r�path�isfiler�remove�isdir�shutilZrmtree)rrrrrsz SysconfigTestCase.cleanup_testfncCs,tj�}|jtjj|�|�dS)N)r�get_config_h_filename�
assertTruerrr)r�config_hrrr�test_get_config_h_filenamesz,SysconfigTestCase.test_get_config_h_filenamecCs&|jtj�tjdt��dS)N�prefix)ZassertNotEqualrZget_python_libr)rrrr�test_get_python_lib#sz%SysconfigTestCase.test_get_python_libcCs]tj�}|jtjj|�|�tjj|d�}|jtjj|�|�dS)NzPython.h)rZget_python_incrrrr�joinr)r�inc_dirZpython_hrrr�test_get_python_inc*sz%SysconfigTestCase.test_get_python_inccCs-tj�}|j|t�|j|�dS)N)r�get_config_varsZassertIsInstance�dictr)rZcvarsrrr�test_get_config_vars3sz&SysconfigTestCase.test_get_config_varscCs�tjd�}|jtjj|�|�|jtjj|�|�tjr�tjj|dd�}|jtjj	|�|�|jtj
|��n4tjdkr�|jtjj
tj��|�ndS)N�srcdir�IncludezPython.h�posix)r�get_config_varrrr�isabsrZpython_buildr�exists�_is_python_source_dir�name�assertEqual�dirname�get_makefile_filename)rr%ZPython_hrrr�test_srcdir8s	zSysconfigTestCase.test_srcdircCs`tjd�}tj�}z tjd�tjd�}Wdtj|�X|j||�dS)Nr%z..)rr(r�getcwd�chdirr-)rr%�cwdZsrcdir2rrr�test_srcdir_independent_of_cwdJs
z0SysconfigTestCase.test_srcdir_independent_of_cwd�unixz+not testing if default compiler is not unixcCs^dtjd<dtjd<Gdd�d�}|�}tj|�|j|jdd�dS)	NZmy_ar�ARz-arflags�ARFLAGSc@s"eZdZdZdd�ZdS)z;SysconfigTestCase.test_customize_compiler.<locals>.compilerr5c[s
||_dS)N)�exes)r�kwrrr�set_executables`szKSysconfigTestCase.test_customize_compiler.<locals>.compiler.set_executablesN)�__name__�
__module__�__qualname__Z
compiler_typer:rrrr�compiler]sr>Zarchiverzmy_ar -arflags)r�environrZcustomize_compilerr-r8)rr>�comprrr�test_customize_compilerVs

	
z)SysconfigTestCase.test_customize_compilerc
Cs{t|_t|jd�}z|jd�|jd�Wd|j�Xtj|j�}|j|idd6dd6�dS)N�wz)CONFIG_ARGS=  '--arg1=optarg1' 'ENV=LIB'
zVAR=$OTHER
OTHER=fooz'--arg1=optarg1' 'ENV=LIB'�CONFIG_ARGS�foo�OTHER)rr�open�write�closer�parse_makefiler-)r�fd�drrr�test_parse_makefile_basegs	
z*SysconfigTestCase.test_parse_makefile_basec
Cs{t|_t|jd�}z|jd�|jd�Wd|j�Xtj|j�}|j|idd6dd6�dS)NrBz,CONFIG_ARGS=  '--arg1=optarg1' 'ENV=\$$LIB'
zVAR=$OTHER
OTHER=fooz'--arg1=optarg1' 'ENV=\$LIB'rCrDrE)rrrFrGrHrrIr-)rrJrKrrr�"test_parse_makefile_literal_dollarss	
z4SysconfigTestCase.test_parse_makefile_literal_dollarcCsTddl}|j|jd�tjd��|j|jd�tjd��dS)Nr�CFLAGS�LDFLAGS)rr-r()r�global_sysconfigrrr�test_sysconfig_module�s
z'SysconfigTestCase.test_sysconfig_module�CUSTOMIZED_OSX_COMPILERzcompiler flags customizedcCssddl}tjd�r+|jd�n|j|jd�tjd��|j|jd�tjd��dS)NrrRzcompiler flags customized�LDSHARED�CC)rr(ZskipTestr-)rrPrrr�test_sysconfig_compiler_vars�sz.SysconfigTestCase.test_sysconfig_compiler_vars�
EXT_SUFFIXNz!EXT_SUFFIX required for this testcCs|jttjd�dS)N�SO)ZassertWarns�DeprecationWarningrr()rrrr�test_SO_deprecation�s	z%SysconfigTestCase.test_SO_deprecationcCs?tdtf��'|jtjd�tjd��WdQXdS)N�rWrV)rrXr-rr()rrrr�
test_SO_value�szSysconfigTestCase.test_SO_valuecCs9tj�}|j|d�|j|d|d�dS)NrWrV)rr"ZassertIsNotNoner-)r�varsrrr�test_SO_in_vars�sz!SysconfigTestCase.test_SO_in_varscCs�ttd��}|jtjd��WdQXtjttj	�tgdtj
dtjdd�}|j�\}}|j
d|jd|�dS)	NrBaB                from distutils.core import Distribution
                config = Distribution().get_command_obj('config')
                # try_compile may pass or it may fail if no compiler
                # is found but it should not raise an exception.
                rc = config.try_compile('int x;')
                �stdout�stderrZuniversal_newlinesTrzSubprocess failed: )rFr�
writelines�textwrap�dedent�
subprocess�Popen�str�sys�
executable�PIPEZSTDOUTZcommunicater-�
returncode)r�f�pZoutsZerrsrrr�.test_customize_compiler_before_get_config_vars�s			z@SysconfigTestCase.test_customize_compiler_before_get_config_vars)r;r<r=r
rrrrr!r$r0r4�unittestZ
skipUnlessrrArLrMrQZskipIfrr(rUrYr[r]rlrr)r
rrs.	
rcCs&tj�}|jtjt��|S)N)rmZ	TestSuiteZaddTestZ	makeSuiter)Zsuiterrr�
test_suite�srn�__main__)�__doc__rrrcrfrarmZ	distutilsrZdistutils.ccompilerrZdistutils.testsrZtest.supportrrrZEnvironGuardZTestCaserrnr;rrrr�<module>s�