Your IP : 216.73.216.213


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

�
g f'X�@s�ddlmZddlmZejd�\ZZejd�\ZZejd�\Z	Z
ddlZddlZddl
mZddlZddlZddlZGdd	�d	�Zejed
e	e
g�\ZZGdd�d�Zejed
e	e
g�\ZZGd
d�d�Zejed
e	e
g�\ZZGdd�d�ZGdd�deej�ZGdd�deej�ZGdd�d�Z eje d
e	e
g�\Z!Z"Gdd�d�Z#Gdd�de#ej�Z$Gdd�de#ej�Z%Gdd�d�Z&eje&d
e	e
g�\Z'Z(Gdd �d �Z)eje)d
e	e
g�\Z*Z+e,d!kr�ej-�ndS)"�)�util��	importlibzimportlib.machineryzimportlib.utilN)�supportc@s:eZdZdZdd�Zdd�Zdd�ZdS)	�DecodeSourceBytesTestsustring ='ü'cCs5|jjd�}|j|jj|�|j�dS)Nzutf-8)�source�encode�assertEqualr�
decode_source)�self�source_bytes�r
�B/opt/alt/python34/lib64/python3.4/test/test_importlib/test_util.py�test_ut8_defaultsz'DecodeSourceBytesTests.test_ut8_defaultcCsWd|j}|jd�}||jd�ks7t�|j|jj|�|�dS)Nz# coding=latin-1
zlatin-1zutf-8)rr�AssertionErrorr	rr
)rrrr
r
r�test_specified_encodings
z.DecodeSourceBytesTests.test_specified_encodingcCs_dj|j|jg�}|jd�}|j|jj|�dj|j|jg��dS)Nz
zutf-8�
)�joinrrr	rr
)rrrr
r
r�test_universal_newlinessz.DecodeSourceBytesTests.test_universal_newlinesN)�__name__�
__module__�__qualname__rrrrr
r
r
rrsrrc@s�eZdZdZedd��Zdd�Zdd�Zdd	�Zd
d�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�ModuleForLoaderTestsz+Tests for importlib.util.module_for_loader.c
Cs7tj��%tjdt�|jj|�SWdQXdS)N�ignore)�warnings�catch_warnings�simplefilter�DeprecationWarningr�module_for_loader)�cls�funcr
r
rr+s
z&ModuleForLoaderTests.module_for_loadercCsUtj��Ctjdt�|jt��|jjdd��}WdQXWdQXdS)N�errorcSs|S)Nr
)�xr
r
r�<lambda>6sz3ModuleForLoaderTests.test_warning.<locals>.<lambda>)rrrr�assertRaisesrr)rr r
r
r�test_warning1s
z!ModuleForLoaderTests.test_warningcCs"|jdd��}|||�S)NcSs|S)Nr
)r�moduler
r
rr#9sz4ModuleForLoaderTests.return_module.<locals>.<lambda>)r)r�name�fxnr
r
r�
return_module8sz"ModuleForLoaderTests.return_modulecCsEdd�}|j|�}y|||�Wntk
r@YnXdS)NcSs
t�dS)N)�ImportError)rr&r
r
r�to_wrap=sz5ModuleForLoaderTests.raise_exception.<locals>.to_wrap)rr*)rr'r+r(r
r
r�raise_exception<s
z$ModuleForLoaderTests.raise_exceptionc
Cshd}tj|��'|j|�}|j|tj�WdQX|j|tj�|j	|j
|�dS)Nza.b.c)�	test_util�uncacher)�assertIn�sys�modulesZassertIsInstance�types�
ModuleTyper	r)rZmodule_namer&r
r
r�test_new_moduleEsz$ModuleForLoaderTests.test_new_modulecs�G�fdd�d�}d}tjd�}d|_d|_tj|��g|tj|<|�}|j|�}�j	|tj|��j
|j|��j
|j|�WdQXdS)Ncs1eZdZdd�Z�jdd��ZdS)z4ModuleForLoaderTests.test_reload.<locals>.FakeLoadercSsdS)NTr
)rr'r
r
r�
is_packageRsz?ModuleForLoaderTests.test_reload.<locals>.FakeLoader.is_packagecSs|S)Nr
)rr&r
r
r�load_moduleTsz@ModuleForLoaderTests.test_reload.<locals>.FakeLoader.load_moduleN)rrrr5rr6r
)rr
r�
FakeLoaderQsr7za.b.c�*)r2r3�
__loader__�__package__r-r.r0r1r6�assertIsr	)rr7r'r&�loaderZreturned_moduler
)rr�test_reloadOs		
	z ModuleForLoaderTests.test_reloadc
Cs@d}tj|��%|j|�|j|tj�WdQXdS)Nza.b.c)r-r.r,�assertNotInr0r1)rr'r
r
r�test_new_module_failurecs
z,ModuleForLoaderTests.test_new_module_failurecCs`d}tj|�}tj|��6|tj|<|j|�|j|tj|�WdQXdS)Nza.b.c)r2r3r-r.r0r1r,r;)rr'r&r
r
r�test_reload_failureks

z(ModuleForLoaderTests.test_reload_failurecCsKdd�}|j|�}|j|j|j�|j|j|j�dS)NcSsdS)Nr
)rr&r
r
rr(usz6ModuleForLoaderTests.test_decorator_attrs.<locals>.fxn)rr	rr)rr(�wrappedr
r
r�test_decorator_attrstsz)ModuleForLoaderTests.test_decorator_attrsc
Cs~Gdd�dtj�}d}||�}tj|��>|j|�|tj|<|j|�}|j||�WdQXdS)Nc@seZdZdd�ZdS)z;ModuleForLoaderTests.test_false_module.<locals>.FalseModulecSsdS)NFr
)rr
r
r�__bool__~szDModuleForLoaderTests.test_false_module.<locals>.FalseModule.__bool__N)rrrrCr
r
r
r�FalseModule}srD�mod)	r2r3r-r.ZassertFalser0r1r)r;)rrDr'r&Zgivenr
r
r�test_false_modulezs

z&ModuleForLoaderTests.test_false_modulecs�G�fdd�d�}d}tj|��Y|d�}|j|�}�j|j|��j|j|��j|jd�WdQXd}tj|��Y|d�}|j|�}�j|j|��j|j|��j|j|�WdQXdS)Ncs=eZdZdd�Zdd�Z�jdd��ZdS)z<ModuleForLoaderTests.test_attributes_set.<locals>.FakeLoadercSs
||_dS)N)�_pkg)rr5r
r
r�__init__�szEModuleForLoaderTests.test_attributes_set.<locals>.FakeLoader.__init__cSs|jS)N)rG)rr'r
r
rr5�szGModuleForLoaderTests.test_attributes_set.<locals>.FakeLoader.is_packagecSs|S)Nr
)rr&r
r
rr6�szHModuleForLoaderTests.test_attributes_set.<locals>.FakeLoader.load_moduleN)rrrrHr5rr6r
)rr
rr7�sr7zpkg.modF�pkgzpkg.subT)r-r.r6r	rr;r9r:)rr7r'r<r&r
)rr�test_attributes_set�s	z(ModuleForLoaderTests.test_attributes_setN)rrr�__doc__�classmethodrr%r)r,r4r=r?r@rBrFrJr
r
r
rr's	
	rc@sjeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dS)�SetPackageTestsz%Tests for importlib.util.set_package.c
s{�fdd�}|jj|�}tj��tjdt�|�WdQX|jt�d��|j|�j	�dS)zcVerify the module has the expected value for __package__ after
        passing through set_package.cs�S)Nr
r
)r&r
rr#�sz(SetPackageTests.verify.<locals>.<lambda>rNr:)
r�set_packagerrrr�
assertTrue�hasattrr	r:)rr&�expectr(rAr
)r&r�verify�s

zSetPackageTests.verifycCs,tjd�}d|_|j|d�dS)Nr&�)r2r3r:rR)rr&r
r
r�test_top_level�s	zSetPackageTests.test_top_levelcCs8tjd�}dg|_d|_|j|d�dS)NrIz<path>)r2r3�__path__r:rR)rr&r
r
r�test_package�s	zSetPackageTests.test_packagecCs,tjd�}d|_|j|d�dS)Nzpkg.modrI)r2r3r:rR)rr&r
r
r�test_submodule�s	zSetPackageTests.test_submodulecCsBtjd�}t|d�r.t|d�n|j|d�dS)NrEr:rS)r2r3rP�delattrrR)rr&r
r
r�test_setting_if_missing�sz'SetPackageTests.test_setting_if_missingcCs=x6dD].}tjd�}||_|j||�qWdS)NTFrE)TF)r2r3r:rR)r�valuer&r
r
r�test_leaving_alone�s
	z"SetPackageTests.test_leaving_alonec
Csqdd�}tj��'tjdt�|jj|�}WdQX|j|j|j�|j|j|j�dS)NcSsdS)Nr
)r&r
r
rr(�sz1SetPackageTests.test_decorator_attrs.<locals>.fxnr)	rrrrrrNr	rr)rr(rAr
r
rrB�s
z$SetPackageTests.test_decorator_attrsN)rrrrKrRrTrVrWrYr[rBr
r
r
rrM�srMc@sMeZdZdZGdd�d�Zdd�Zdd�Zdd	�Zd
S)�SetLoaderTestsz"Tests importlib.util.set_loader().c@s%eZdZejdd��ZdS)zSetLoaderTests.DummyLoadercCs|jS)N)r&)rr&r
r
rr6�sz&SetLoaderTests.DummyLoader.load_moduleN)rrrr�
set_loaderr6r
r
r
r�DummyLoader�sr^cCs�|j�}tjd�|_y
|j`Wntk
r?YnXtj��1tjdt	�|j
||jd�j�WdQXdS)N�blahr)r^r2r3r&r9�AttributeErrorrrrrr	r6)rr<r
r
r�test_no_attribute�s


z SetLoaderTests.test_no_attributecCsm|j�}tjd�|_d|j_tj��1tjdt�|j	||j
d�j�WdQXdS)Nr_r)r^r2r3r&r9rrrrr	r6)rr<r
r
r�test_attribute_is_None�s
z%SetLoaderTests.test_attribute_is_NonecCsm|j�}tjd�|_d|j_tj��1tjdt�|j	d|j
d�j�WdQXdS)Nr_r8r)r^r2r3r&r9rrrrr	r6)rr<r
r
r�test_not_resets
zSetLoaderTests.test_not_resetN)rrrrKr^rarbrcr
r
r
rr\�s
r\c@s#eZdZGdd�d�ZdS)�Frozen_SetLoaderTestsc@s%eZdZejdd��ZdS)z!Frozen_SetLoaderTests.DummyLoadercCs|jS)N)r&)rr&r
r
rr6sz-Frozen_SetLoaderTests.DummyLoader.load_moduleN)rrr�frozen_utilr]r6r
r
r
rr^
sr^N)rrrr^r
r
r
rrd	srdc@s#eZdZGdd�d�ZdS)�Source_SetLoaderTestsc@s%eZdZejdd��ZdS)z!Source_SetLoaderTests.DummyLoadercCs|jS)N)r&)rr&r
r
rr6sz-Source_SetLoaderTests.DummyLoader.load_moduleN)rrr�source_utilr]r6r
r
r
rr^sr^N)rrrr^r
r
r
rrfsrfc@s^eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�ResolveNameTestsz$Tests importlib.util.resolve_name().cCs#|jd|jjdd��dS)N�bacon)r	r�resolve_name)rr
r
r�
test_absoluteszResolveNameTests.test_absolutecCs#|jd|jjdd��dS)Nri�spam)r	rrj)rr
r
r�test_aboslute_within_packagesz-ResolveNameTests.test_aboslute_within_packagec
Cs-|jt��|jjdd�WdQXdS)Nz.baconrS)r$�
ValueErrorrrj)rr
r
r�test_no_package"sz ResolveNameTests.test_no_packagecCs#|jd|jjdd��dS)Nzspam.eggs.baconz.baconz	spam.eggs)r	rrj)rr
r
r�test_in_package's	z ResolveNameTests.test_in_packagecCs#|jd|jjdd��dS)Nz
spam.baconz..baconz	spam.eggs)r	rrj)rr
r
r�test_other_package,s	z#ResolveNameTests.test_other_packagec
Cs-|jt��|jjdd�WdQXdS)Nz..baconrl)r$rnrrj)rr
r
r�test_escape1szResolveNameTests.test_escapeN)
rrrrKrkrmrorprqrrr
r
r
rrhsrhc@s�eZdZGdd�d�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�
FindSpecTestsc@s(eZdZedddd��ZdS)zFindSpecTests.FakeMetaFinderNcCs
|||fS)Nr
)r'�path�targetr
r
r�	find_spec>sz&FindSpecTests.FakeMetaFinder.find_spec)rrr�staticmethodrvr
r
r
r�FakeMetaFinder=srxc
Cs�d}tj|��ptj|�}d}|jj||�}||_||_|tj	|<|j
j|�}|j||�WdQXdS)N�some_modz	a loader!)
r-r.r2r3�	machinery�
ModuleSpecr9�__spec__r0r1rrvr	)rr'r&r<�spec�foundr
r
r�test_sys_modulesAs		
zFindSpecTests.test_sys_modulesc
Cs�d}tj|��mtj|�}|`d}|jj||�}||_|tj	|<|j
j|�}|j||�WdQXdS)Nryz	a loader!)
r-r.r2r3r9rzr{r|r0r1rrvr	)rr'r&r<r}r~r
r
r�#test_sys_modules_without___loader__Ms	
z1FindSpecTests.test_sys_modules_without___loader__cCskd}tj|��Ptj|�}d|_|tj|<|jt��|j	j
|�WdQXWdQXdS)Nry)r-r.r2r3r|r0r1r$rnrrv)rr'r&r
r
r�test_sys_modules_spec_is_NoneYs	
z+FindSpecTests.test_sys_modules_spec_is_Nonec
Cs|d}tj|��atj|�}|jj|d�}||_|tj|<|j	j
|�}|j||�WdQXdS)Nry)r-r.r2r3rzr{r|r0r1rrvr	)rr'r&r}r~r
r
r�test_sys_modules_loader_is_Nonebs	
z-FindSpecTests.test_sys_modules_loader_is_NonecCs�d}tj|��ftj|�}y
|`Wntk
rCYnX|tj|<|jt	��|j
j|�WdQXWdQXdS)Nry)r-r.r2r3r|r`r0r1r$rnrrv)rr'r&r
r
r� test_sys_modules_spec_is_not_setls


z.FindSpecTests.test_sys_modules_spec_is_not_setcCsdd}tj|��Itjd|jg��*|j|ddf|jj|��WdQXWdQXdS)Nry�	meta_path)r-r.Zimport_staterxr	rrv)rr'r
r
r�test_successxs
zFindSpecTests.test_successcCs|j|jjd��dS)NZnevergoingtofindthismodule)ZassertIsNonerrv)rr
r
r�test_nothing�szFindSpecTests.test_nothingcCs�d}d}tj|dd���}tj|||�\}}|jj|�}|j|d�|j|ttj	��|j
|ttj	��|jj|�}|j||�WdQXdS)Nrl�hamrIT)r-�temp_module�	submodulerrv�assertIsNotr/�sortedr0r1r>r	)rr'�subname�pkg_dir�fullname�_r}�
spec_againr
r
r�test_find_submodule�sz!FindSpecTests.test_find_submodulecCs�d}d}tj|dd���}|jj|�tj|||�\}}|jj|�}|j|d�|j|t	t
j��|j|t	t
j��|jj|�}|j
||�WdQXdS)Nrlr�rIT)r-r��init�
import_moduler�rrvr�r/r�r0r1r>r	)rr'r�r�r�r�r}r�r
r
r�+test_find_submodule_parent_already_imported�sz9FindSpecTests.test_find_submodule_parent_already_importedc	Cs�d}d}tj|dd���}tj|||�\}}d|}|jj||�}|j|d�|j|ttj	��|j
|ttj	��|jj|�}|j||�WdQXdS)Nrlr�rIT�.)r-r�r�rrvr�r/r�r0r1r>r	)	rr'r�r�r�r��relnamer}r�r
r
r�test_find_relative_module�s
z'FindSpecTests.test_find_relative_modulecCs�d}d}tj|dd���}tj|||�\}}d|}|jt��|jj|�WdQX|j|tt	j
��|j|tt	j
��WdQXdS)Nrlr�rITr�)r-r�r�r$rnrrvr>r�r0r1)rr'r�r�r�r�r�r
r
r�)test_find_relative_module_missing_package�s
z7FindSpecTests.test_find_relative_module_missing_packageN)rrrrxrr�r�r�r�r�r�r�r�r�r�r
r
r
rrs;s	

rsc@s"eZdZeZeZeZdS)�Frozen_FindSpecTestsN)	rrr�frozen_initr��frozen_machineryrzrerr
r
r
rr��sr�c@s"eZdZeZeZeZdS)�Source_FindSpecTestsN)	rrr�source_initr��source_machineryrzrgrr
r
r
rr��sr�c@s(eZdZdd�Zdd�ZdS)�MagicNumberTestscCs |jt|jj�d�dS)N�)r	�lenr�MAGIC_NUMBER)rr
r
r�test_length�szMagicNumberTests.test_lengthcCs |j|jjjd��dS)Ns
)rOrr��endswith)rr
r
r�test_incorporates_rn�sz%MagicNumberTests.test_incorporates_rnN)rrrr�r�r
r
r
rr��sr�c@s0eZdZdZejjZej	ejjdk	d�dd��Z
dd�Zdd	�Zd
d�Z
dd
�Zdd�Zej	ejdko�ejdkd�dd��Zej	ejjdk	d�dd��Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�ZdS)$�PEP3147TestszMTests of PEP 3147-related functions: cache_from_source and source_from_cache.Nz1requires sys.implementation.cache_tag not be NonecCshtjjdddd�}tjjdddddj|j��}|j|jj|d�|�dS)N�foo�bar�bazzqux.py�__pycache__z
qux.{}.pycT)�osrtr�format�tagr	r�cache_from_source)rrtrQr
r
r�test_cache_from_source�sz#PEP3147Tests.test_cache_from_sourcecCsItjtjdd��+|jt��|jjd�WdQXWdQXdS)N�	cache_tagzwhatever.py)r�	swap_attrr0�implementationr$�NotImplementedErrorrr�)rr
r
r�#test_cache_from_source_no_cache_tag�sz0PEP3147Tests.test_cache_from_source_no_cache_tagcCs\tjjdd�}tjjdddj|j��}|j|jj|d�|�dS)Nzfoo.bar�filer�z
file{}.pycT)r�rtrr�r�r	rr�)rrtrQr
r
r�test_cache_from_source_no_dot�sz*PEP3147Tests.test_cache_from_source_no_dotcCshtjjdddd�}tjjdddddj|j��}|j|jj|d�|�dS)Nr�r�r�zqux.pyr�z
qux.{}.pyoF)r�rtrr�r�r	rr�)rrtrQr
r
r� test_cache_from_source_optimized�sz-PEP3147Tests.test_cache_from_source_optimizedcCsJd}tjjddj|j��}|j|jj|d�|�dS)Nzfoo.pyr�z
foo.{}.pycT)r�rtrr�r�r	rr�)rrtrQr
r
r�test_cache_from_source_cwd�s!z'PEP3147Tests.test_cache_from_source_cwdc
Cs�tjjddd�}tjjddddj|j��}|j|jj|g�|d�|j|jj|dg�|d�Gd	d
�d
�}|jt	��|jjd|��WdQXdS)Nr�r�zbaz.pyr�z	baz.{}.py�o��cc@seZdZdd�ZdS)z=PEP3147Tests.test_cache_from_source_override.<locals>.BearishcSs
t�dS)N)�RuntimeError)rr
r
rrCszFPEP3147Tests.test_cache_from_source_override.<locals>.Bearish.__bool__N)rrrrCr
r
r
r�Bearishsr�z/foo/bar/baz.py)
r�rtrr�r�r	rr�r$r�)rrtZpartial_expectr�r
r
r�test_cache_from_source_overrides#z,PEP3147Tests.test_cache_from_source_override�\�/z/test meaningful only where os.altsep is definedcCs/|j|jjdd�dj|j��dS)Nz\foo\bar\baz/qux.pyTz#\foo\bar\baz\__pycache__\qux.{}.pyc)r	rr�r�r�)rr
r
r�)test_sep_altsep_and_sep_cache_from_sourcesz6PEP3147Tests.test_sep_altsep_and_sep_cache_from_sourcez4requires sys.implementation.cache_tag to not be NonecCsetjjdddddj|j��}tjjdddd�}|j|jj|�|�dS)Nr�r�r�r�z
qux.{}.pyczqux.py)r�rtrr�r�r	r�source_from_cache)rrtrQr
r
r�test_source_from_cachesz#PEP3147Tests.test_source_from_cachecCsatjjddd�}tjtjdd��+|jt��|j	j
|�WdQXWdQXdS)Nr_r�zwhatever.pycr�)r�rtrrr�r0r�r$r�rr�)rrtr
r
r�#test_source_from_cache_no_cache_tag'sz0PEP3147Tests.test_source_from_cache_no_cache_tagcCs|jt|jjd�dS)Nz/foo/bar/bazqux.pyc)r$rnrr�)rr
r
r�test_source_from_cache_bad_path.sz,PEP3147Tests.test_source_from_cache_bad_pathcCs|jt|jjd�dS)Nzfoo.cpython-32.pyc)r$rnrr�)rr
r
r�test_source_from_cache_no_slash4sz,PEP3147Tests.test_source_from_cache_no_slashcCs|jt|jjd�dS)Nz__pycache__/foo.pyc)r$rnrr�)rr
r
r�#test_source_from_cache_too_few_dots9sz0PEP3147Tests.test_source_from_cache_too_few_dotscCs|jt|jjd�dS)Nz"__pycache__/foo.cpython-32.foo.pyc)r$rnrr�)rr
r
r�$test_source_from_cache_too_many_dots>sz1PEP3147Tests.test_source_from_cache_too_many_dotscCs|jt|jjd�dS)Nz/foo/bar/foo.cpython-32.foo.pyc)r$rnrr�)rr
r
r�$test_source_from_cache_no__pycache__Dsz1PEP3147Tests.test_source_from_cache_no__pycache__)rrrrKr0r�r�r��unittestZ
skipUnlessr�r�r�r�r�r�r��sep�altsepr�r�r�r�r�r�r�r�r
r
r
rr��s&	!
r��__main__).rrrSr-Zimport_importlibr�r�r�r�rergr�r0Ztestrr2r�rrZ	test_bothZFrozen_DecodeSourceBytesTestsZSource_DecodeSourceBytesTestsrZFrozen_ModuleForLoaderTestsZSource_ModuleForLoaderTestsrMZFrozen_SetPackageTestsZSource_SetPackageTestsr\ZTestCaserdrfrhZFrozen_ResolveNameTestsZSource_ResolveNameTestsrsr�r�r�ZFrozen_MagicNumberTestsZSource_MagicNumberTestsr�ZFrozen_PEP3147TestsZSource_PEP3147Testsr�mainr
r
r
r�<module>sL}9$ �
p