Your IP : 216.73.216.213


Current Path : /opt/alt/python38/lib64/python3.8/test/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/test/__pycache__/test_runpy.cpython-38.opt-2.pyc

U

i�fl��@s�ddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlmZmZmZmZmZmZmZddlmZmZddlZddlmZmZmZmZdZ ddddddd�Z!eeddgej"dd	d	e#e!d
ddd�d
�Z$e$�%e!�Gdd�d�Z&Gdd�dej'e&�Z(Gdd�dej'e&�Z)Gdd�dej'e&�Z*Gdd�dej'�Z+e,dk�r|e�-�dS)�N)�forget�make_legacy_pyc�unload�verbose�
no_tracing�create_empty_file�temp_dir)�make_script�make_zip_script)�	_run_code�_run_module_code�
run_module�run_patha�# Check basic code execution
result = ['Top level assignment']
def f():
    result.append('Lower level reference')
f()
del f
# Check the sys module
import sys
run_argv0 = sys.argv[0]
run_name_in_sys_modules = __name__ in sys.modules
module_in_sys_modules = (run_name_in_sys_modules and
                         globals() is sys.modules[__name__].__dict__)
# Check nested operation
import runpy
nested = runpy._run_module_code('x=1\n', mod_name='<run>')
)�__name__�__file__�
__cached__�__package__�__doc__�__spec__zTop level assignmentzLower level referenceF�z<run>)�xr�
__loader__)�sys�runpy�result�	run_argv0�run_name_in_sys_modules�module_in_sys_modules�nestedc@s,eZdZddddddgZdd�Zd	d
�ZdS)�CodeExecutionMixin�name�parent�origin�cached�has_location�submodule_search_locationsc	Cs*|��}|��}t|�D]D}|�d�r|�d�r||krB|�|�||dkr|d�|�q|�d�}|�d�}|dkr�|�|�n^|jdk	r�|�t|j�t|j��|j	D]4}d|}|t
||�f}|t
||�f}|�||�q�|�t|�t|��|D](}|||f}|||f}|�||�q�dS)N�__rrz	__spec__.)�copy�list�
startswith�endswith�popZassertIsNone�loader�assertEqual�type�CHECKED_SPEC_ATTRIBUTES�getattr�set)	�self�	result_ns�expected_ns�kZresult_specZ
expected_spec�attrZactualZexpected�r7�4/opt/alt/python38/lib64/python3.8/test/test_runpy.py�assertNamespaceMatchesPs4



�
z)CodeExecutionMixin.assertNamespaceMatchesc
Cs�t�}|��}|d}tjd}tj�||�}|d�}|�||�|�tjd|�|�tj�||�|�d|i}	||d<||	�}|�||	�|�||�|�tjd|�|�tj�||�|�dS)Nrr�sentinel)	�objectr'r�argv�modules�getr9ZassertIsZassertIsNot)
r2Zcreate_namespaceZexpected_namespacer:r4�run_nameZsaved_argv0Z	saved_modr3Z
initial_nsr7r7r8�check_code_executionxs 
z'CodeExecutionMixin.check_code_executionN)r�
__module__�__qualname__r/r9r@r7r7r7r8rDs	�(rc@seZdZdd�Zdd�ZdS)�ExecutionLayerTestCasecCs.t��}|�ddi�dd�}|�||�dS)NrcSstti|�S�N)r�example_source�Zinit_globalsr7r7r8�	create_ns�sz7ExecutionLayerTestCase.test_run_code.<locals>.create_ns)�example_namespacer'�updater@)r2r4rGr7r7r8�
test_run_code�s�z$ExecutionLayerTestCase.test_run_codecsdd�d}d}d}tjj�||d��t��}|��|||�|ddd����fdd	�}|�||�dS)
Nz
<Nonsense>zSome other nonsensezNow you're just being silly�)r"r,T)rrrrrrrrcstt|���SrD)rrErF��mod_name�mod_specr7r8rG�s
�z>ExecutionLayerTestCase.test_run_module_code.<locals>.create_ns)�	importlib�	machinery�
ModuleSpecrHr'rIr@)r2�	mod_fnameZ
mod_loaderZmod_packager4rGr7rLr8�test_run_module_code�s*��
z+ExecutionLayerTestCase.test_run_module_codeN)rrArBrJrSr7r7r7r8rC�s	rCc@s�eZdZdd�Zdd�Zdd�Zd9dd	�Zd:ddd�dd
�Zdd�Zdd�Z	d;ddd�dd�Z
d<ddd�dd�Zdd�Zd=dd�Z
dd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�ZdS)>�RunModuleTestCasecCs4zt|�Wntk
r YnX|�d|�dS)NzExpected import error for )r
�ImportError�fail)r2rMr7r7r8�expect_import_error�s
z%RunModuleTestCase.expect_import_errorcCs^|�d�|�d�|�d�|�d�|�d�|�d�|�d�|�d�|�d	�dS)
Nrzsys.imp.ericzos.path.halfza.beez.howardz..eatenz.test_runpyz	.unittestZmultiprocessing)rW�r2r7r7r8�test_invalid_names�s







z$RunModuleTestCase.test_invalid_namescCs|�td�dd�dS)Nrr)r-r
rXr7r7r8�test_library_module�sz%RunModuleTestCase.test_library_moduleFcCs,t�|�|rdStj�|d�}t|�|S)N�__init__.py)�os�mkdir�path�joinr)r2�pkg_dir�	namespace�	pkg_fnamer7r7r8�_add_pkg_dir�s
zRunModuleTestCase._add_pkg_dir�
runpy_test�ra�parent_namespacesc	Cs<|s|r|std��d}|tjd}tj�t���}}	tdkrLtd|	�t	j�
d|�tdkrrtdt	jd�|r�|g|}
||
d<|
D]B}tj�|	|�}	|�|	|�}tdkr�td	|	�tdkr�td
|�q�tj�|	|�}
t
|
d��}|�|�W5QRXtdk�rtd
|
�|d||}tj�||
�}||
||fS)
Nz2Can't mark top level module as a namespace package�
__runpy_pkg__�pyrz  Package tree in:rz  Updated sys.path:���z  Next level in:z
  Created:�w�.)�RuntimeErrorr\�extsepr^�realpath�tempfileZmkdtempr�printr�insertr_rc�open�writerO�util�spec_from_file_location)r2�source�depthZmod_baserarf�pkg_nameZ
test_fnamer`Zsub_dirZnamespace_flagsZnamespace_flagrbrR�mod_filerMrNr7r7r8�	_make_pkg�s<




�zRunModuleTestCase._make_pkgc	Cstttj�D]}|�d�r
tj|=q
tdkr2td�tjd=tdkrJtd�tj|dd�D]�\}}}|D]P}zt�	tj�
||��Wqftk
r�}ztdkr�t|�W5d}~XYqfXqf|D]X}tj�
||�}zt�|�Wq�tk
�r}ztdk�rt|�W5d}~XYq�Xq�qXz t�|�tdk�r6td�Wn6tk
�rn}ztdk�r^t|�W5d}~XYnXdS)	Nrgrz  Removed sys.modules entriesrz  Removed sys.path entryF)�topdownz  Removed package tree)
r(rr=r)rrpr^r\�walk�remover_�OSError�rmdir)	r2�top�entry�root�dirs�filesr Zex�fullnamer7r7r8�_del_pkg�s:





zRunModuleTestCase._del_pkgcCs\d}|d|7<|d|d<|d}tj�|j|d�}||d<|rX|d|7<dS)N�crrrr)rOrtrur )r2�ns�	alter_sysZchar_to_add�specZnew_specr7r7r8�_fix_ns_for_legacy_pycs
�z(RunModuleTestCase._fix_ns_for_legacy_pycc
	s|jt|||d�\}}�}t��t��}|��||j��d�d|d���rb|�|ddd����fdd�}	z�t	d	kr�t
d
��|�|	|�t�
�t��t�|�tjs�t|�t��t�
�t	d	kr�t
d��|�|��|�|	|�W5|�|�Xt	d	k�rt
d�dS)
Nrerkr�rrrrrT�rrrcst�|�d�S�N�r��r
rF�r�rMr7r8rG6sz2RunModuleTestCase._check_module.<locals>.create_nsr�Running from source:�Running from compiled:�Module executed successfully)rzrErrHr'rIr#�
rpartitionr�rrpr@rO�invalidate_caches�
__import__r\r}r�dont_write_bytecoderrr�)
r2rwr�rarfr`rRrNr4rGr7r�r8�
_check_module!sN��
��



zRunModuleTestCase._check_modulec	s$|jt|d||d�\}}}}|�d�d�t|�t��}	|	�||tj�	|��|d���rn|	�|ddd����fdd	�}
z�td
kr�td��|�
|
|	�t��t|�t�|�tjs�t|�t|�td
kr�td��t��|�|	��|�
|
|	�W5|�
|�Xtd
k�r td
�dS)N�__main__rerkrr�Tr�cst�|�d�Sr�r�rF�r�rxr7r8rG_sz3RunModuleTestCase._check_package.<locals>.create_nsrr�r�zPackage executed successfully)rzrEr�rrHr'rIrOrt�cache_from_sourcer�rrpr@r�r�r\r}rr�rrr�)r2rwr�rarfr`rRrMrNr4rGr7r�r8�_check_packageIsP
��

��



z RunModuleTestCase._check_packagecCs�|dkrtd��d}|}t|�D]}|}tj�||�}q tj�|d�}t|�tdkr`td|�tj�|d�}	|�|	�tdkr�td|	�tj�|	d�}
|�|
�tdkr�td	|
�tj�|
d
�}t|�tdkr�td|�dS)Nrz$Relative module test needs depth > 1rgz
sibling.pyz  Added sibling module:�unclez  Added uncle package:Zcousinz  Added cousin package:z	nephew.pyz  Added nephew module:)	�
ValueError�ranger\r^r_rrrprc)r2Zbase_dirrvrwrxZ
module_dir�iZ
parent_dirZ
sibling_fnameZ	uncle_dirZ
cousin_dirZnephew_fnamer7r7r8�_add_relative_modulesrs.




z'RunModuleTestCase._add_relative_modulesNc	CsZd}|�||�\}}}}|dkr&|}n|}�z
|�|||�|�d�d}	tdkr\td|�t||d�}
|�|
d|�|�|
d|	�|�d	|
�|�d
|
�~
t	�
�t|�t�
|�tj�s4t|�t|�tdkr�td|�t	�
�t||d�}|�|d|�|�|d|	�|�d	|�|�d
|�~W5|�|�Xtdk�rVtd�dS)
Nza\
from __future__ import absolute_import
from . import sibling
from ..uncle.cousin import nephew
rkrrr�)r?rrZsiblingZnephewr�r�)rzr�r�r�rrpr
r-�assertInrOr�r�r\r}rr�rr)r2rwr?�contentsr`rRrMrN�
expected_namerxZd1Zd2r7r7r8�_check_relative_imports�sF
�




z)RunModuleTestCase._check_relative_importscCs.td�D] }tdkrtd|�|�|�qdS)N�r�Testing package depth:�r�rrpr��r2rwr7r7r8�test_run_module�s
z!RunModuleTestCase.test_run_modulecCs6tdd�D]&}tdkr td|�|j|ddd�q
dS�Nrr�r�Trer�r�r7r7r8�$test_run_module_in_namespace_package�s
z6RunModuleTestCase.test_run_module_in_namespace_packagecCs0tdd�D] }tdkr td|�|�|�q
dS)Nrr�r��r�rrpr�r�r7r7r8�test_run_package�s
z"RunModuleTestCase.test_run_packagecCsN|�ddd�}|\}}}}|�dd�}|�|j|�tj�|dd�}ttt	t
f}|D]�}|j}|�|���d�
|�}	t|dd	d
��}
|
�|	�W5QRXzt|�Wn2|k
r�}z|�dt
|��W5d}~XYnX|�d�
|��zt|d
�Wn4|k
�r,}z|�dt
|��W5d}~XYnX|�d�
|��W5QRXqTdS)NrKrr��	.__main__rgr[z raise {0}('{0} in __init__.py.')Zwt�ascii��encodingzfinding speczNothing raised; expected {}z
.submodule)rz�replace�
addCleanupr�r\r^r_rU�AttributeError�	TypeErrorr�rZsubTest�formatrrrsr
ZassertNotInrV)r2rr`�_rMZinit�
exceptionsZ	exceptionr rvry�errr7r7r8� test_run_package_init_exceptions�s,
""z2RunModuleTestCase.test_run_package_init_exceptionsc	CsR|�dd�\}}}}z,t|�|�td��t|�W5QRXW5|�|�XdS)NrKr�found in sys\.modules)rzr�r��assertWarnsRegex�RuntimeWarningr
)r2r`r�rMr7r7r8�test_submodule_imported_warning�s�z1RunModuleTestCase.test_submodule_imported_warningc	Cs�|�ddd�\}}}}|�|j|�|�dd�}t|�|�|tj�t�	��t�
dt�t|�W5QRXt|�|�
td��t|�W5QRXdS)NrKrr�r��errorr�)rzr�r�r�r�r�rr=�warnings�catch_warnings�simplefilterr�r
r�)r2r`r�rM�packager7r7r8� test_package_imported_no_warning�s
z2RunModuleTestCase.test_package_imported_no_warningcCs4tdd�D]$}tdkr td|�|j|dd�q
dS)Nrr�r�T)rfr�r�r7r7r8�%test_run_package_in_namespace_package�s
z7RunModuleTestCase.test_run_package_in_namespace_packagecCs4tdd�D]$}tdkr td|�|j|dd�q
dS)Nrr�r�T)rar�r�r7r7r8�test_run_namespace_package�s
z,RunModuleTestCase.test_run_namespace_packagecCs6tdd�D]&}tdkr td|�|j|ddd�q
dSr�r�r�r7r7r8�/test_run_namespace_package_in_namespace_package�s
zARunModuleTestCase.test_run_namespace_package_in_namespace_packagecCs2td�D]$}tdkrtd|�|j|dd�qdS)Nr�rr�Tr�r�r�r7r7r8�test_run_module_alter_syss
z+RunModuleTestCase.test_run_module_alter_syscCs4tdd�D]$}tdkr td|�|j|dd�q
dS)Nrr�r�Tr�r�r�r7r7r8�test_run_package_alter_sys	s
z,RunModuleTestCase.test_run_package_alter_syscCs0tdd�D] }tdkr td|�|�|�q
dS)N��rz"Testing relative imports at depth:�r�rrpr�r�r7r7r8�test_explicit_relative_imports
z/RunModuleTestCase.test_explicit_relative_importcCs2tdd�D]"}tdkr td|�|�|d�q
dS)Nr�r�rz'Testing main relative imports at depth:r�r�r�r7r7r8�test_main_relative_imports
z+RunModuleTestCase.test_main_relative_importc	s�d}d�|�t|�\}}�}t��t��}|��|tj�|���	d�d|d����fdd�}z|�||�W5|�
|�XdS)Nrz*And now for something completely differentrkrr�cst�|��SrDr�rF�rMr?r7r8rG&sz2RunModuleTestCase.test_run_name.<locals>.create_ns)rzrErrHr'rIrOrtr�r�r�r@)r2rwr`rRrNr4rGr7r�r8�
test_run_names"
�

�zRunModuleTestCase.test_run_namecCs|ddl}d}d}ddg}d|dg}t�}t�}td|�D]V}d	�|g|�}	|�|	�|D]}
|�|	d	|
�q\|D]}
|�|	d	|
�qxq:d	�|g|�}	|�|	�|�|	d
�|�d|�\}}}
}|�|j|�td|d�D]}|�|d|�q�|�	|g�D]H}|�
||j�|�
|jt
jj�|j�rD|�|j�n|�|j��q
|�t|�d|�|�t|�d|�dS)
Nrr�rgr�zuncle.cousinzuncle.cousin.nephewz.siblingrrkz.runpy_testrKr�)�pkgutilr1r�r_�addrzr�r�r�Z
walk_packagesZassertIsInstanceZ
ModuleInfoZ
module_finderrOrP�
FileFinderZispkgr}r r-�len)r2r�Z	max_depthZ	base_nameZpackage_suffixesZmodule_suffixesZexpected_packagesZexpected_modulesrwrxr r`rRrMrNZ
moduleinfor7r7r8�test_pkgutil_walk_packages-s@


�
�z,RunModuleTestCase.test_pkgutil_walk_packages)F)rd)F)F)N)rrArBrWrYrZrcrzr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r7r7r7r8rT�sF
��(�)
(
rTc@s�eZdZd"dd�Zd#dd�Zdd	�Zd
d�Zdd
�Zdd�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zedd��Zd d!�ZdS)$�RunPathTestCaseNFcCs|dkrt}t||||�SrD)rEr	)r2�
script_dirZscript_basenamerv�omit_suffixr7r7r8�_make_test_scriptTs�z!RunPathTestCase._make_test_scriptTc
s��fdd�}t��}	|dkr"|}
n|}
|rJtj�|
|�}|j}|sRd|_nd}}|	�|||d||ddd��|�||	�d���fdd�}|r�|dkr�tj��|�}|s�d|_||	d<�|	d	<��	d
�d|	d<|�||	�dS)
Ncs
t�|�SrD�rrF)�script_namer7r8rG_sz0RunPathTestCase._check_script.<locals>.create_nsrKT)rrrrrrrrzprove.issue15230.is.fixedcst�|��SrDr�rF�r?r�r7r8rG|srrrkrr)
rHr'rOrtrur#r,rIr@r�)
r2r�r�Z
expected_fileZexpected_argv0rM�expect_spec�check_loaderrGr4Z	spec_namerNZ
mod_cachedr7r�r8�
_check_script[sH��
�zRunPathTestCase._check_scriptcCst�|�}|�t|t|�dSrD)�re�escape�assertRaisesRegexrUr)r2r��msgr7r7r8�_check_import_error�s
z#RunPathTestCase._check_import_errorc	Cs:t��*}d}|�||�}|j|d||dd�W5QRXdS�N�script�
<run_path>F�r��rr�r��r2r�rMr�r7r7r8�test_basic_script�s
�z!RunPathTestCase.test_basic_scriptc	Cs@t��0}d}t�|�||��}|j|d||dd�W5QRXdSr�)r�pathlib�Pathr�r�r�r7r7r8�"test_basic_script_with_path_object�s
�
�z2RunPathTestCase.test_basic_script_with_path_objectc	Cs>t��.}d}|j||dd�}|j|d||dd�W5QRXdS)Nr�T)r�r�Fr�r�r�r7r7r8�test_basic_script_no_suffix�s�
�z+RunPathTestCase.test_basic_script_no_suffixc	CsRt��B}d}|�||�}tj|dd�}t�|�|j|d||dd�W5QRXdS)Nr�T��doraiser�Fr�)rr��
py_compile�compiler\r}r�)r2r�rMr��
compiled_namer7r7r8�test_script_compiled�s

�z$RunPathTestCase.test_script_compiledc	Cs:t��*}d}|�||�}|j|d|||d�W5QRXdS)Nr�r��rMr�r�r7r7r8�test_directory�s
�zRunPathTestCase.test_directoryc	Cs`t��P}d}|�||�}tj|dd�}t�|�tjsRt|�}|j	|d|||d�W5QRXdS)Nr�Tr�r�r�)
rr�r�r�r\r}rr�rr�)r2r�rMr�r�Z
legacy_pycr7r7r8�test_directory_compiled�s

�z'RunPathTestCase.test_directory_compiledc	Cs:t��*}d}|�||�}d|}|�||�W5QRXdS)N�not_main�"can't find '__main__' module in %r)rr�r�)r2r�rMr�r�r7r7r8�test_directory_error�s
z$RunPathTestCase.test_directory_errorc	CsLt��<}d}|�||�}t|d|�\}}|j|d|||dd�W5QRXdS)Nr��test_zipr�F�rMr�)rr�r
r�)r2r�rMr��zip_name�fnamer7r7r8�test_zipfile�s�zRunPathTestCase.test_zipfilec	CsZt��J}d}|�||�}tj|dd�}t|d|�\}}|j|d|||dd�W5QRXdS)Nr�Tr�r�r�Fr�)rr�r�r�r
r�)r2r�rMr�r�rrr7r7r8�test_zipfile_compiled�s��z%RunPathTestCase.test_zipfile_compiledc	CsJt��:}d}|�||�}t|d|�\}}d|}|�||�W5QRXdS)Nr�r�r�)rr�r
r�)r2r�rMr�rrr�r7r7r8�test_zipfile_error�sz"RunPathTestCase.test_zipfile_errorc	
Csft��V}t��D}d}d|}|�|||�}t|d|�\}}d}|�t|t|�W5QRXW5QRXdS)Nr�z import runpy
runpy.run_path(%r)
r�zrecursion depth exceeded)rr�r
r��RecursionErrorr)	r2r�Z	dummy_dirrMrvr�rrr�r7r7r8�test_main_recursion_error�s�z)RunPathTestCase.test_main_recursion_errorc
Cs`t��P}tj�|d�}t|ddd��}|�d�W5QRXt|�}|�|dd�W5QRXdS)Nz	script.pyrj�latin1r�u%
#coding:latin1
s = "non-ASCII: hé"
�sunon-ASCII: hé)rr\r^r_rrrsrr-)r2r��filename�frr7r7r8�
test_encoding�szRunPathTestCase.test_encoding)NF)NTT)rrArBr�r�r�r�r�r�r�r�r�r�rrrrrrr7r7r7r8r�Qs*�
�
-	


r�cs�eZdZdZejdkrenejZe	e
jdd���Z�fdd�Z
dd�Zd	d
�Zdd�Zd
d�Zdd�Zdd�Zdd�Zdd�Z�ZS)�TestExitl:Zwin32c	os"t��}t�|�VW5QRXdSrD)rr�r�)�args�kwargsZtmp_fnr7r7r8�tmp_path�szTestExit.tmp_pathc	sD|���2}|d|_}|�t�d��t�j||�W5QRXdS)Nzham.pyz@                    raise KeyboardInterrupt
                    )r�ham�
write_text�textwrap�dedent�super�run)r2r
r�tmpr��	__class__r7r8rs
��zTestExit.runcOs>tj||dtjd���}|�|j�d��|�|j|j�dS)NT)�text�stderrz
KeyboardInterrupt
)	�
subprocessr�PIPEZ
assertTruerr*r-�
returncode�
EXPECTED_CODE)r2r
r�procr7r7r8�assertSigIntszTestExit.assertSigIntcCs|�tj|jg�dSrD)r r�
executablerrXr7r7r8�test_pymain_run_fileszTestExit.test_pymain_run_filecCs8|jj}|d}|�t�d��|jtj|g|d�dS)Nz
run_module.pyzU                import runpy
                runpy.run_module("ham")
                ��cwd�rr!rrrr rr!)r2rr
r7r7r8�%test_pymain_run_file_runpy_run_modules��z.TestExit.test_pymain_run_file_runpy_run_modulecCs8|jj}|d}|�t�d��|jtj|g|d�dS)Nzrun_module_as_main.pyz^                import runpy
                runpy._run_module_as_main("ham")
                r#r%)r2rZrun_module_as_mainr7r7r8�-test_pymain_run_file_runpy_run_module_as_main%s��z6TestExit.test_pymain_run_file_runpy_run_module_as_maincCs|jtjddg|jjd�dS)N�-cz%import runpy; runpy.run_module('ham')r#�r rr!rr!rXr7r7r8�"test_pymain_run_command_run_module2s
�z+TestExit.test_pymain_run_command_run_modulecCs|jtjddg|jjd�dS)Nr(�
import hamr#r)rXr7r7r8�test_pymain_run_command8sz TestExit.test_pymain_run_commandcCs|jtjgd|jjd�dS)Nr+)�inputr$r)rXr7r7r8�test_pymain_run_stdin;szTestExit.test_pymain_run_stdincCs$|j}|jtjd|jg|jd�dS)Nz-mr#)rr rr!Zstemr!)r2rr7r7r8�test_pymain_run_module>szTestExit.test_pymain_run_module)rrArBZSTATUS_CONTROL_C_EXITr�platform�signal�SIGINTr�staticmethod�
contextlib�contextmanagerrrr r"r&r'r*r,r.r/�
__classcell__r7r7rr8r�s"��

rr�).r4�importlib.machineryrO�importlib.utilZos.pathr\r�r�r�r1rrrorZunittestr�Ztest.supportrrrrrrrZtest.support.script_helperr	r
rrrr
rrEZimplicit_namespacer<�dictrHrIrZTestCaserCrTr�rr�mainr7r7r7r8�<module>s`$�	��

O'&M