Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/test_imp.cpython-34.pyo

�
g f�M�@s|yddlZWnek
r*dZYnXddlZddlZddlZddlZddlZddlmZddl	Z	ddl
Z
e
j��!e
jde
�ddlZWdQXdd�Ze	jedkd�Gdd�de	j��ZGd	d
�d
e	j�ZGdd�de	j�ZGd
d�de	j�ZGdd�de	j�Zedkrxe	j�ndS)�N)�support�ignorecCs/tj|�}tjttd�d�|�S)zXDecorator to skip a test if not running under CPython or lacking
    imp.load_dynamic().�load_dynamiczimp.load_dynamic() required)rZcpython_only�unittest�skipIf�hasattr�imp)�meth�r
�2/opt/alt/python34/lib64/python3.4/test/test_imp.py�requires_load_dynamicsrz_thread module is requiredc@s.eZdZdZdd�Zdd�ZdS)�	LockTestsz)Very basic test of import lock functions.cCs!|jtj�|d|�dS)Nz!expected imp.lock_held() to be %r)�assertEqualr�	lock_held)�selfZexpectedr
r
r�verify_lock_stateszLockTests.verify_lock_statecCs�d}tj�}|j|�x+t|�D]}tj�|jd�q,Wxt|�D]}tj�qZW|j|�|s�ytj�Wntk
r�Yq�X|jd�ndS)N�2Tz5release_lock() without lock should raise RuntimeError)rrr�range�acquire_lock�release_lock�RuntimeError�fail)rZLOOPSZlock_held_at_start�ir
r
r�testLock"s



zLockTests.testLockN)�__name__�
__module__�__qualname__�__doc__rrr
r
r
rr
sr
c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
edd��Zedd��Z
edd��Zedd��Zejejd�dd��Zdd�ZdS)�ImportTestscCs+tjd�}|j|_|j|_dS)Nztest.encoded_modules)�	importlib�
import_module�test_strings�__path__�	test_path)r�modr
r
r�setUp>szImportTests.setUpcCsGx@|jD]5\}}}tjd|�}|j||j�q
WdS)Nztest.encoded_modules.module_)r!rr r�test)r�modname�encodingZteststrr$r
r
r�test_import_encoded_moduleCs	
z&ImportTests.test_import_encoded_modulecCs�xS|jD]H\}}}tjd||j�d�}|j|j|�WdQXq
Wtjjt	�g}|j
t��tjd|�WdQXdS)N�module_r�badsyntax_pep3120)r!r�find_moduler#rr(�os�path�dirname�__file__�assertRaises�SyntaxError)rr$r(�_�fdr.r
r
r�test_find_module_encodingIs z%ImportTests.test_find_module_encodingcCsx�|jD]�\}}}tjd||j�\}}}|�X|j|d�|j|j|�|j|j�d�|j|j�d|�WdQXq
Wtjd�\}}}|�T|j|d�|j|jd�|j|j�d�|j|j�d�WdQXdS)Nr*rz# test %s encoding
�tokenizezutf-8z*"""Tokenization help for Python programs.
)	r!rr,r#ZassertNotEqualrr(�tell�readline)rr$r(r3�fp�filename�infor
r
r�test_issue1267Rs 
zImportTests.test_issue1267cCs�d}tjjdd�zbt|dd��}|jd�WdQXtj|�\}}}|j�|j|j	d�Wdtjd=t
j|d�t
j|d�t
j|d	�XdS)
NZtest_imp_helperr�.z.py�wz%# coding: cp1252
u = 'test.test_imp'
�cp1252z.pycz.pyo)�sysr.�insert�open�writerr,�closerr(r�unlink)r�
temp_mod_name�filer:r;r
r
r�test_issue3594es

zImportTests.test_issue3594c/Csrtj�}i
dd6dd6dd6dd6dd	6dd
6dd6dd
6dd6dd6}tjdkr�|j|d�d}n|j|�}|s�|jd|�n|j|�}d|}d|}tjj	|d�}z2tjj
dtj�t|dd��}|j
d�WdQXtj|�\}}	}
|��|j|�|j|	dd#�j|��|j|
dd�|j|
dd�|j|
dtj�tj|||	|
�}|j|jd�WdQXtj��(tjd�tj||d�}WdQX|j|jd�tj��=tjd�tjsmtj|tj|d��}nWdQX|j|jd�tjj|�s�tj|�nt|d��}|j
d�WdQXtj��$tjd�tj||�}WdQX|j|j d�Wdtjd=x0d$D](}
t!j"||
�t!j"||
�q'Wt!j#|�t!j#d"�XdS)%Nsäzutf-8s��cp1250s��cp1251r?s��cp1253�cp1254s��cp1255�cp1256�cp1257�cp1258�darwinsäz2can't run this test with %s as filesystem encodingZtest_imp_helper_Ztest_imp_helper_package_z__init__.pyr�.pyr>za = 1
���r�rzb = 2
�.pyc�.pyo�__pycache__���)rRrWrX)$r@�getfilesystemencoding�platformr�get�skipTest�decoder-r.�joinrA�curdirrBrCrr,ZassertIsNotNoneZ
assertTrue�endswithZ	PY_SOURCE�load_module�a�warnings�catch_warnings�simplefilterZload_source�dont_write_bytecodeZ
load_compiled�cache_from_source�exists�mkdirZload_package�brrE�rmtree)rZfs_encodingZ
known_localesZspecial_charZdecoded_charrFZtest_package_nameZinit_file_namerGr:r;r$�packageZextr
r
r�test_issue5604tsz
		


 



	




zImportTests.test_issue5604cCs2tjjt�}|jttjd|g�dS)Nr+)r-r.r/r0r1r2rr,)rr.r
r
r�test_issue9319�s	zImportTests.test_issue9319c
Cs�tj}tj}tj��ptjd�}|j|dj�tj	d|�}|j
t|�|j
||j�|j||j�WdQXdS)Nr-r)r-r.�getenvr�EnvironmentVarGuardrr,�
addCleanuprDrcZassertIsZassertIsNot)rZ	orig_pathZorig_getenv�xZnew_osr
r
r�test_load_from_source�s			
z!ImportTests.test_load_from_sourcecCsgd}tj|�}|d}|dk	r>|j|j�ntj||�}|j|j|�dS)N�_heapqr)rr,rsrDrcrr)rZexamplertZfile_r$r
r
r�test_issue15828_load_extensions�s
z+ImportTests.test_issue15828_load_extensionsc
Cs�d}tj|�\}}}|j�tj||�}tjd|�}tjd|�}|j|j|�|j|jd�|j|jd�|jt��tjd|�WdQXdS)N�_testimportmultipleZ_testimportmultiple_fooZ_testimportmultiple_barZnonexistent)rr,rDrrrr1�ImportError)r�mZfileobj�pathnameZdescriptionZmod0Zmod1Zmod2r
r
r�+test_issue16421_multiple_modules_in_one_dll�s
z7ImportTests.test_issue16421_multiple_modules_in_one_dllc
Csdd}d}|jt��}tj||�WdQX|j||jj�|j||jj�dS)Nzbogus file path�	extension)	r1ryrrZassertInZ	exceptionr.r�name)rr.r~�errr
r
r�"test_load_dynamic_ImportError_path�sz.ImportTests.test_load_dynamic_ImportError_pathcCs~d}tj|�}|ddk	r6|dj�n|ddtjkr]|jd�ntj|d|dd��dS)NrxrrVz/found module doesn't appear to be a C extensionrT)rr,rDZC_EXTENSIONr^rc)rr~�foundr
r
r�'test_load_module_extension_file_is_None
sz3ImportTests.test_load_module_extension_file_is_Nonez*test meaningful only when writing bytecodec
CsStj��Atjd}tj|�|jtdtjtjdg�WdQXdS)Nz.pyz
^No moduler=)	rZtemp_cwdZTESTFNr-rk�assertRaisesRegexryrr,)r�sourcer
r
r�test_bug7732s



zImportTests.test_bug7732cCsEtjdtjttj��}|jtj�|jtj�dS)Nr)rZ_LoadSourceCompatibilityr0rB�get_data)r�loaderr
r
r�test_multiple_calls_to_get_data sz+ImportTests.test_multiple_calls_to_get_dataN)rrrr%r)r5r<rHrorprurrwr|r�r�rrr@rhr�r�r
r
r
rr=s	W
rc@sFeZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�ReloadTestszPVery basic tests to make sure that imp.reload() operates just like
    reload().c	Cs0tj��ddl}tj|�WdQXdS)Nr)rrrr-r�reload)rr-r
r
r�test_source-s
zReloadTests.test_sourcec	Cs3tjd��ddl}tj|�WdQXdS)N�timer)r�CleanImportr�rr�)rr�r
r
r�test_extension9szReloadTests.test_extensionc	Cs3tjd��ddl}tj|�WdQXdS)N�marshalr)rr�r�rr�)rr�r
r
r�test_builtin>szReloadTests.test_builtinc	skddlm}tjjd���fdd�}|j|�|jtd��tj	|�WdQXdS)Nr)�parser�htmlcs�tjd<dS)Nr�)r@�modulesr
)r�r
r�cleanupGsz5ReloadTests.test_with_deleted_parent.<locals>.cleanup)
r�r�r@r��poprsr�ryrr�)rr�r�r
)r�r�test_with_deleted_parentCs
z$ReloadTests.test_with_deleted_parentN)rrrrr�r�r�r�r
r
r
rr�(s
r�c@s<eZdZdZej�Zeje	j
jdk	d�dd��Zdd�Z
dd	�Zd
d�Zdd
�Zdd�Zejejdko�ejdkd�dd��Zeje	j
jdk	d�dd��Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�ZdS)&�PEP3147TestszTests of PEP 3147.Nz1requires sys.implementation.cache_tag not be NonecCsetjjdddd�}tjjdddddj|j��}|jtj|d�|�dS)N�foo�bar�bazzqux.pyrYz
qux.{}.pycT)r-r.r`�format�tagrrri)rr.�expectr
r
r�test_cache_from_sourceSsz#PEP3147Tests.test_cache_from_sourcecCsFtjtjdd��(|jt��tjd�WdQXWdQXdS)N�	cache_tagzwhatever.py)r�	swap_attrr@�implementationr1�NotImplementedErrorrri)rr
r
r�#test_cache_from_source_no_cache_tag]sz0PEP3147Tests.test_cache_from_source_no_cache_tagcCsYtjjdd�}tjjdddj|j��}|jtj|d�|�dS)Nzfoo.barrGrYz
file{}.pycT)r-r.r`r�r�rrri)rr.r�r
r
r�test_cache_from_source_no_dotcsz*PEP3147Tests.test_cache_from_source_no_dotcCsetjjdddd�}tjjdddddj|j��}|jtj|d�|�dS)Nr�r�r�zqux.pyrYz
qux.{}.pyoF)r-r.r`r�r�rrri)rr.r�r
r
r� test_cache_from_source_optimizedjsz-PEP3147Tests.test_cache_from_source_optimizedcCsGd}tjjddj|j��}|jtj|d�|�dS)Nzfoo.pyrYz
foo.{}.pycT)r-r.r`r�r�rrri)rr.r�r
r
r�test_cache_from_source_cwdrs!z'PEP3147Tests.test_cache_from_source_cwdc
Cs�tjjddd�}tjjddddj|j��}|jtj|g�|d�|jtj|dg�|d�Gd	d
�d
�}|jt	��tjd|��WdQXdS)Nr�r�zbaz.pyrYz	baz.{}.py�o��cc@seZdZdd�ZdS)z=PEP3147Tests.test_cache_from_source_override.<locals>.BearishcSs
t�dS)N)r)rr
r
r�__bool__�szFPEP3147Tests.test_cache_from_source_override.<locals>.Bearish.__bool__N)rrrr�r
r
r
r�Bearish�sr�z/foo/bar/baz.py)
r-r.r`r�r�rrrir1r)rr.Zpartial_expectr�r
r
r�test_cache_from_source_overridews z,PEP3147Tests.test_cache_from_source_override�\�/z/test meaningful only where os.altsep is definedcCs,|jtjdd�dj|j��dS)Nz\foo\bar\baz/qux.pyTz#\foo\bar\baz\__pycache__\qux.{}.pyc)rrrir�r�)rr
r
r�)test_sep_altsep_and_sep_cache_from_source�sz6PEP3147Tests.test_sep_altsep_and_sep_cache_from_sourcez4requires sys.implementation.cache_tag to not be NonecCsbtjjdddddj|j��}tjjdddd�}|jtj|�|�dS)Nr�r�r�rYz
qux.{}.pyczqux.py)r-r.r`r�r�rr�source_from_cache)rr.r�r
r
r�test_source_from_cache�sz#PEP3147Tests.test_source_from_cachecCs^tjjddd�}tjtjdd��(|jt��t	j
|�WdQXWdQXdS)NZblahrYzwhatever.pycr�)r-r.r`rr�r@r�r1r�rr�)rr.r
r
r�#test_source_from_cache_no_cache_tag�sz0PEP3147Tests.test_source_from_cache_no_cache_tagcCs|jttjd�dS)Nz/foo/bar/bazqux.pyc)r1�
ValueErrorrr�)rr
r
r�test_source_from_cache_bad_path�sz,PEP3147Tests.test_source_from_cache_bad_pathcCs|jttjd�dS)Nzfoo.cpython-32.pyc)r1r�rr�)rr
r
r�test_source_from_cache_no_slash�sz,PEP3147Tests.test_source_from_cache_no_slashcCs|jttjd�dS)Nz__pycache__/foo.pyc)r1r�rr�)rr
r
r�#test_source_from_cache_too_few_dots�sz0PEP3147Tests.test_source_from_cache_too_few_dotscCs|jttjd�dS)Nz"__pycache__/foo.cpython-32.foo.pyc)r1r�rr�)rr
r
r�$test_source_from_cache_too_many_dots�s	z1PEP3147Tests.test_source_from_cache_too_many_dotscCs|jttjd�dS)Nz/foo/bar/foo.cpython-32.foo.pyc)r1r�rr�)rr
r
r�$test_source_from_cache_no__pycache__�s	z1PEP3147Tests.test_source_from_cache_no__pycache__cCs0ytd�}Wntk
r$YnX|jd|f�tjd�tjjdtj�dd�}|j	|�t
jd�tj
�tjjd	�}td�}|j|j||j|jtjtjf�t
jd�td�}t
jd�|j|j||j|jtjtjf�dS)
N�pep3147z!pep3147 module already exists: %rrcSs4tjdtjkr#tjd=ntjd�dS)Nrr�)r@r.r-ra�shutilrmr
r
r
rr��s
z3PEP3147Tests.test_package___file__.<locals>.cleanupzpep3147/__init__.pyr=�__init__.py)r=zpep3147r�)�
__import__ryrr-rkr@r.rArarsrZcreate_empty_filer�invalidate_caches�sepr`rr0r"�path_importer_cacheZunload)rrzr�Zexpected___file__r
r
r�test_package___file__�s$




.

z"PEP3147Tests.test_package___file__)rrrrrZget_tagr�rZ
skipUnlessr@r�r�r�r�r�r�r�r�r-r��altsepr�r�r�r�r�r�r�r�r�r
r
r
rr�Ns(	!
r�c@s7eZdZejejdkd�dd��ZdS)�NullImporterTestsNzNeed an undecodeable filenamecCsEtj}tj|�z|jttj|�Wdtj|�XdS)N)	r�TESTFN_UNENCODABLEr-rkr1ryrZNullImporter�rmdir)rr~r
r
r�test_unencodeable�s
	
z#NullImporterTests.test_unencodeable)rrrrrrr�r�r
r
r
rr��sr��__main__)�_threadryrr-Zos.pathr�r@r&rrrerfrg�PendingDeprecationWarningrrrZTestCaser
rr�r�r�r�mainr
r
r
r�<module>s.

""�&�