403Webshell
Server IP : 118.27.122.248  /  Your IP : 216.73.216.153
Web Server : Apache
System : Linux web0264.sh.tyo1 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
User : c9415830 ( 11735)
PHP Version : 8.4.17
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/alt/python36/lib64/python3.6/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/alt/python36/lib64/python3.6/test/__pycache__/test_runpy.cpython-36.opt-2.pyc
3

�
�^0|�@s^ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlmZm
Z
mZmZmZmZmZddlmZmZmZmZddlZddlmZmZmZmZdZddddddd�Zeeddgejdd	d	e ed
ddd�d
�Z!e!j"e�Gdd�d�Z#Gdd�dej$e#�Z%Gdd�dej$e#�Z&Gdd�dej$e#�Z'e(dk�rZej)�dS)�N)�forget�make_legacy_pyc�unload�verbose�
no_tracing�create_empty_file�temp_dir)�make_pkg�make_script�make_zip_pkg�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	Cs8|j�}|j�}xPt|�D]D}|jd�r|jd�r||krD|j|�||dkr|dj|�qW|jd�}|jd�}|dkr�|j|�nb|jdk	r�|jt|j�t|j��x>|j	D]4}d|}|t
||�f}|t
||�f}|j||�q�W|jt|�t|��x2|D]*}|||f}|||f}|j||��qWdS)N�__r rz	__spec__.)�copy�list�
startswith�endswith�popZassertIsNone�loader�assertEqual�type�CHECKED_SPEC_ATTRIBUTES�getattr�set)	�self�	result_ns�expected_ns�kZresult_specZ
expected_spec�attr�actualZexpected�r:�//opt/alt/python36/lib64/python3.6/test_runpy.py�assertNamespaceMatchesMs2




z)CodeExecutionMixin.assertNamespaceMatchesc
Cs�t�}|j�}|d}tjd}tjj||�}|d�}|j||�|jtjd|�|jtjj||�|�d|i}	||d<||	�}|j||	�|j||�|jtjd|�|jtjj||�|�dS)Nrr�sentinel)	�objectr)r�argv�modules�getr<ZassertIsZassertIsNot)
r4Zcreate_namespaceZexpected_namespacer=r6�run_nameZsaved_argv0Z	saved_modr5Z
initial_nsr:r:r;�check_code_executionus 
z'CodeExecutionMixin.check_code_executionN)r�
__module__�__qualname__r1r<rCr:r:r:r;r!As	(r!c@seZdZdd�Zdd�ZdS)�ExecutionLayerTestCasecCs.tj�}|jddi�dd�}|j||�dS)NrcSstti|�S)N)r
�example_source)�init_globalsr:r:r;�	create_ns�sz7ExecutionLayerTestCase.test_run_code.<locals>.create_ns)�example_namespacer)�updaterC)r4r6rIr:r:r;�
test_run_code�s

z$ExecutionLayerTestCase.test_run_codec
sdd�d}d}d}tjj�||d��tj�}|j�|||�|ddd����fdd	�}|j||�dS)
Nz
<Nonsense>zSome other nonsensezNow you're just being silly�)r$r.T)rrrrrrrrcstt|���S)N)rrG)rH)�mod_name�mod_specr:r;rI�sz>ExecutionLayerTestCase.test_run_module_code.<locals>.create_ns)�	importlib�	machinery�
ModuleSpecrJr)rKrC)r4�	mod_fnameZ
mod_loaderZmod_packager6rIr:)rNrOr;�test_run_module_code�s&
z+ExecutionLayerTestCase.test_run_module_codeN)rrDrErLrTr:r:r:r;rF�s	rFc@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)>�RunModuleTestCasecCs4yt|�Wntk
r YnX|jd|�dS)NzExpected import error for )r�ImportError�fail)r4rNr:r:r;�expect_import_error�s
z%RunModuleTestCase.expect_import_errorcCs^|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd	�dS)
Nrzsys.imp.ericzos.path.halfza.beez.howardz..eatenz.test_runpyz	.unittestZmultiprocessing)rX)r4r:r:r;�test_invalid_names�s







z$RunModuleTestCase.test_invalid_namescCs|jtd�dd�dS)Nrr)r/r)r4r:r:r;�test_library_module�sz%RunModuleTestCase.test_library_moduleFcCs,tj|�|rdStjj|d�}t|�|S)Nz__init__.py)�os�mkdir�path�joinr)r4�pkg_dir�	namespace�	pkg_fnamer:r:r;�_add_pkg_dir�s
zRunModuleTestCase._add_pkg_dir�
runpy_test)r`�parent_namespacescCs>|s|r|rtd��d}|tjd}tjjtj��}}	tdkrNtd|	�t	jj
d|�tdkrttdt	jd�|r�|g|}
||
d<xJ|
D]B}tjj|	|�}	|j|	|�}tdkr�td|	�tdkr�td	|�q�Wtjj|	|�}
t
|
d
�}|j|�|j�tdk�rtd	|
�|d||}tjj||
�}||
||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^rb�open�write�closerP�util�spec_from_file_location)r4�source�depthZmod_baser`rd�pkg_nameZ
test_fnamer_Zsub_dirZnamespace_flagsZnamespace_flagrarS�mod_filerNrOr:r:r;�	_make_pkg�s<







zRunModuleTestCase._make_pkgc	Cs�x$ttj�D]}|jd�rtj|=qWtdkr6td�tjd=tdkrNtd�x�tj|dd�D]�\}}}xX|D]P}ytj	tjj
||��Wqntk
r�}ztdkr�t|�WYdd}~XqnXqnWx`|D]X}tjj
||�}ytj|�Wq�tk
�r}ztdk�rt|�WYdd}~Xq�Xq�Wq^Wy tj|�tdk�rFtd�Wn6tk
�r~}ztdk�rnt|�WYdd}~XnXdS)	Nrerz  Removed sys.modules entriesrz  Removed sys.path entryF)�topdownz  Removed package tree)
r*rr@r+rrnr]r[�walk�remover^�OSError�rmdir)	r4�top�entry�root�dirs�filesr"Zex�fullnamer:r:r;�_del_pkg�s:



"


zRunModuleTestCase._del_pkgcCs\d}|d|7<|d|d<|d}tjj|j|d�}||d<|rX|d|7<dS)N�crrrr)rPrsrtr")r4�ns�	alter_sysZchar_to_add�specZnew_specr:r:r;�_fix_ns_for_legacy_pycs

z(RunModuleTestCase._fix_ns_for_legacy_pycc
s|jt|||d�\}}�}t��tj�}|j�||j�jd�d|d���rb|j|ddd����fdd�}	z�td	kr�t	d
��|j
|	|�tj�t
��tj|�tjs�t|�t��tj�td	kr�t	d��|j|��|j
|	|�Wd|j|�Xtd	k�rt	d�dS)
N)r`rdrhr)rrrrrT)rrrcst�|�d�S)N)r�)r)rH)r�rNr:r;rI4sz2RunModuleTestCase._check_module.<locals>.create_nsrzRunning from source:zRunning from compiled:zModule executed successfully)ryrGrrJr)rKr%�
rpartitionrrnrCrP�invalidate_caches�
__import__r[r|r�dont_write_bytecoderrr�r�)
r4rvr�r`rdr_rSrOr6rIr:)r�rNr;�
_check_modulesF





zRunModuleTestCase._check_modulecs&|jt|d||d�\}}}}|jd�d�t|�tj�}	|	j||tjj	|��|d���rn|	j|ddd����fdd	�}
z�t
d
kr�td��|j|
|	�tj
�t|�tj|�tj�st|�t|�t
d
kr�td��tj
�|j|	��|j|
|	�Wd|j|�Xt
d
k�r"td
�dS)N�__main__)r`rdrhr)rrrrrT)rrrcst�|�d�S)N)r�)r)rH)r�rwr:r;rI]sz3RunModuleTestCase._check_package.<locals>.create_nsrzRunning from source:zRunning from compiled:zPackage executed successfully)ryrGr�rrJr)rKrPrs�cache_from_sourcerrnrCr�r�r[r|rr�rrr�r�)r4rvr�r`rdr_rSrNrOr6rIr:)r�rwr;�_check_packageGsH







z RunModuleTestCase._check_packagecCs�|dkrtd��d}|}x"t|�D]}|}tjj||�}q"Wtjj|d�}t|�tdkrdtd|�tjj|d�}	|j|	�tdkr�td|	�tjj|	d�}
|j|
�tdkr�td	|
�tjj|
d
�}t|�tdkr�td|�dS)Nrz$Relative module test needs depth > 1rez
sibling.pyz  Added sibling module:�unclez  Added uncle package:Zcousinz  Added cousin package:z	nephew.pyz  Added nephew module:)	�
ValueError�ranger[r]r^rrrnrb)r4Zbase_dirrurvrwZ
module_dir�iZ
parent_dirZ
sibling_fnameZ	uncle_dirZ
cousin_dirZnephew_fnamer:r:r;�_add_relative_modulesps.




z'RunModuleTestCase._add_relative_modulesNcCsZd}|j||�\}}}}|dkr&|}n|}�z
|j|||�|jd�d}	tdkr\td|�t||d�}
|j|
d|�|j|
d|	�|jd	|
�|jd
|
�~
tj	�t
|�tj|�t
j�s4t|�t|�tdkr�td|�tj	�t||d�}|j|d|�|j|d|	�|jd	|�|jd
|�~Wd|j|�Xtdk�rVtd�dS)
Nza\
from __future__ import absolute_import
from . import sibling
from ..uncle.cousin import nephew
rhrrzRunning from source:)rBrrZsiblingZnephewzRunning from compiled:zModule executed successfully)ryr�r�rrnrr/�assertInrPr�r�r[r|rr�rrr�)r4rvrB�contentsr_rSrNrO�
expected_namerwZd1Zd2r:r:r;�_check_relative_imports�sD



z)RunModuleTestCase._check_relative_importscCs2x,td�D] }tdkr td|�|j|�q
WdS)N�rzTesting package depth:)r�rrnr�)r4rvr:r:r;�test_run_module�s
z!RunModuleTestCase.test_run_modulecCs:x4tdd�D]&}tdkr"td|�|j|ddd�qWdS)Nrr�zTesting package depth:T)r`rd)r�rrnr�)r4rvr:r:r;�$test_run_module_in_namespace_package�s
z6RunModuleTestCase.test_run_module_in_namespace_packagecCs4x.tdd�D] }tdkr"td|�|j|�qWdS)Nrr�zTesting package depth:)r�rrnr�)r4rvr:r:r;�test_run_package�s
z"RunModuleTestCase.test_run_packagec-CsR|jddd�}|\}}}}|jdd�}|j|j|�tjj|dd�}ttt	t
f}x�|D]�}|j}|j|���dj
|�}	t|dd	d
��}
|
j|	�WdQRXyt|�Wn2|k
r�}z|jdt
|��WYdd}~XnX|jdj
|��yt|d
�Wn4|k
�r.}z|jdt
|��WYdd}~XnX|jdj
|��WdQRXqVWdS)NrMrr�z	.__main__rez__init__.pyz raise {0}('{0} in __init__.py.')Zwt�ascii)�encodingzfinding speczNothing raised; expected {}z
.submodule)ry�replace�
addCleanupr�r[r]r^rV�AttributeError�	TypeErrorr�rZsubTest�formatrprqrZassertNotInrW)r4rr_�_rNZinit�
exceptionsZ	exceptionr"rurx�errr:r:r;� test_run_package_init_exceptions�s,

""z2RunModuleTestCase.test_run_package_init_exceptionscCsR|jdd�\}}}}z,t|�|jtd��t|�WdQRXWd|j|�XdS)NrMrzfound in sys\.modules)ryr��assertWarnsRegex�RuntimeWarningrr�)r4r_r�rNr:r:r;�test_submodule_imported_warning�sz1RunModuleTestCase.test_submodule_imported_warningcCs�|jddd�\}}}}|j|j|�|jdd�}t|�|j|tj�tj	��tj
dt�t|�WdQRXt|�|j
td��t|�WdQRXdS)NrMrr�z	.__main__�errorzfound in sys\.modules)ryr�r�r�r�r�rr@�warnings�catch_warnings�simplefilterr�rr�)r4r_r�rN�packager:r:r;� test_package_imported_no_warning�s
z2RunModuleTestCase.test_package_imported_no_warningcCs8x2tdd�D]$}tdkr"td|�|j|dd�qWdS)Nrr�zTesting package depth:T)rd)r�rrnr�)r4rvr:r:r;�%test_run_package_in_namespace_package�s
z7RunModuleTestCase.test_run_package_in_namespace_packagecCs8x2tdd�D]$}tdkr"td|�|j|dd�qWdS)Nrr�zTesting package depth:T)r`)r�rrnr�)r4rvr:r:r;�test_run_namespace_package�s
z,RunModuleTestCase.test_run_namespace_packagecCs:x4tdd�D]&}tdkr"td|�|j|ddd�qWdS)Nrr�zTesting package depth:T)r`rd)r�rrnr�)r4rvr:r:r;�/test_run_namespace_package_in_namespace_package�s
zARunModuleTestCase.test_run_namespace_package_in_namespace_packagecCs6x0td�D]$}tdkr td|�|j|dd�q
WdS)Nr�rzTesting package depth:T)r�)r�rrnr�)r4rvr:r:r;�test_run_module_alter_syss
z+RunModuleTestCase.test_run_module_alter_syscCs8x2tdd�D]$}tdkr"td|�|j|dd�qWdS)Nrr�zTesting package depth:T)r�)r�rrnr�)r4rvr:r:r;�test_run_package_alter_syss
z,RunModuleTestCase.test_run_package_alter_syscCs4x.tdd�D] }tdkr"td|�|j|�qWdS)N��rz"Testing relative imports at depth:)r�rrnr�)r4rvr:r:r;�test_explicit_relative_imports
z/RunModuleTestCase.test_explicit_relative_importcCs6x0tdd�D]"}tdkr"td|�|j|d�qWdS)Nr�r�rz'Testing main relative imports at depth:r�)r�rrnr�)r4rvr:r:r;�test_main_relative_imports
z+RunModuleTestCase.test_main_relative_importcs�d}d�|jt|�\}}�}t��tj�}|j�|tjj|��j	d�d|d����fdd�}z|j
||�Wd|j|�XdS)Nrz*And now for something completely differentrhr)rrrrrcst�|��S)N)r)rH)rNrBr:r;rI$sz2RunModuleTestCase.test_run_name.<locals>.create_ns)ryrGrrJr)rKrPrsr�r�rCr�)r4rvr_rSrOr6rIr:)rNrBr;�
test_run_names

zRunModuleTestCase.test_run_namecCs�ddl}d}d}ddg}d|dg}t�}t�}xltd|�D]^}d	j|g|�}	|j|	�x|D]}
|j|	d	|
�q`Wx|D]}
|j|	d	|
�q�Wq<Wd	j|g|�}	|j|	�|j|	d
�|jd|�\}}}
}|j|j|�x$td|d�D]}|j|d|�q�WxX|j	|g�D]H}|j
||j�|j
|jt
jj�|j�rV|j|j�n|j|j��qW|jt|�d|�|jt|�d|�dS)
Nrr�rer�zuncle.cousinzuncle.cousin.nephewz.siblingrrhz.runpy_testrMr�)�pkgutilr3r�r^�addryr�r�r�Z
walk_packagesZassertIsInstanceZ
ModuleInfoZ
module_finderrPrQ�
FileFinderZispkgr|r"r/�len)r4r�Z	max_depthZ	base_nameZpackage_suffixesZmodule_suffixesZexpected_packagesZexpected_modulesrvrwr"r_rSrNrOZ
moduleinfor:r:r;�test_pkgutil_walk_packages+s<




z,RunModuleTestCase.test_pkgutil_walk_packages)F)rc)F)F)N)rrDrErXrYrZrbryr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r:r:r:r;rU�s:
'(
(
rUc@s�eZdZd dd�Zd!dd�Zdd	�Zd
d�Zdd
�Zdd�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zedd��Zdd�ZdS)"�RunPathTestCaseNFcCs|dkrt}t||||�S)N)rGr
)r4�
script_dirZscript_basenameru�omit_suffixr:r:r;�_make_test_scriptRsz!RunPathTestCase._make_test_scriptTc

s��fdd�}tj�}	|dkr"|}
n|}
|rJtjj|
|�}|j}|sRd|_nd}}|	j|||d||ddd��|j||	�d���fdd�}|r�|dkr�tjj�|�}|s�d|_||	d<�|	d	<�j	d
�d|	d<|j||	�dS)
Ncs
t�|�S)N)r)rH)�script_namer:r;rI]sz0RunPathTestCase._check_script.<locals>.create_nsrMT)rrrrrrrrzprove.issue15230.is.fixedcst�|��S)N)r)rH)rBr�r:r;rIzsrrrhrr)
rJr)rPrsrtr%r.rKrCr�)
r4r�r�Z
expected_fileZexpected_argv0rN�expect_spec�check_loaderrIr6Z	spec_namerOZ
mod_cachedr:)rBr�r;�
_check_scriptYsB
zRunPathTestCase._check_scriptcCstj|�}|jt|t|�dS)N)�re�escape�assertRaisesRegexrVr)r4r��msgr:r:r;�_check_import_error�s
z#RunPathTestCase._check_import_errorcCs:t��*}d}|j||�}|j|d||dd�WdQRXdS)N�scriptz
<run_path>F)r�)rr�r�)r4r�rNr�r:r:r;�test_basic_script�s

z!RunPathTestCase.test_basic_scriptcCs>t��.}d}|j||dd�}|j|d||dd�WdQRXdS)Nr�T)r�z
<run_path>F)r�)rr�r�)r4r�rNr�r:r:r;�test_basic_script_no_suffix�s
z+RunPathTestCase.test_basic_script_no_suffixcCsRt��B}d}|j||�}tj|dd�}tj|�|j|d||dd�WdQRXdS)Nr�T)�doraisez
<run_path>F)r�)rr��
py_compile�compiler[r|r�)r4r�rNr��
compiled_namer:r:r;�test_script_compiled�s

z$RunPathTestCase.test_script_compiledcCs:t��*}d}|j||�}|j|d|||d�WdQRXdS)Nr�z
<run_path>)rN)rr�r�)r4r�rNr�r:r:r;�test_directory�s

zRunPathTestCase.test_directorycCs`t��P}d}|j||�}tj|dd�}tj|�tjsRt|�}|j	|d|||d�WdQRXdS)Nr�T)r�z
<run_path>)rN)
rr�r�r�r[r|rr�rr�)r4r�rNr�r�Z
legacy_pycr:r:r;�test_directory_compiled�s

z'RunPathTestCase.test_directory_compiledc
Cs:t��*}d}|j||�}d|}|j||�WdQRXdS)N�not_mainz"can't find '__main__' module in %r)rr�r�)r4r�rNr�r�r:r:r;�test_directory_error�s
z$RunPathTestCase.test_directory_errorcCsLt��<}d}|j||�}t|d|�\}}|j|d|||dd�WdQRXdS)Nr��test_zipz
<run_path>F)rNr�)rr�rr�)r4r�rNr��zip_name�fnamer:r:r;�test_zipfile�szRunPathTestCase.test_zipfilecCsZt��J}d}|j||�}tj|dd�}t|d|�\}}|j|d|||dd�WdQRXdS)Nr�T)r�r�z
<run_path>F)rNr�)rr�r�r�rr�)r4r�rNr�r�r�r�r:r:r;�test_zipfile_compiled�s
z%RunPathTestCase.test_zipfile_compiledcCsJt��:}d}|j||�}t|d|�\}}d|}|j||�WdQRXdS)Nr�r�z"can't find '__main__' module in %r)rr�rr�)r4r�rNr�r�r�r�r:r:r;�test_zipfile_error�sz"RunPathTestCase.test_zipfile_errorc	Csft��V}t��D}d}d|}|j|||�}t|d|�\}}d}|jt|t|�WdQRXWdQRXdS)Nr�z import runpy
runpy.run_path(%r)
r�zrecursion depth exceeded)rr�rr��RecursionErrorr)	r4r�Z	dummy_dirrNrur�r�r�r�r:r:r;�test_main_recursion_error�sz)RunPathTestCase.test_main_recursion_errorcCs`t��P}tjj|d�}t|ddd��}|jd�WdQRXt|�}|j|dd�WdQRXdS)Nz	script.pyrg�latin1)r�u%
#coding:latin1
s = "non-ASCII: hé"
�sunon-ASCII: hé)rr[r]r^rprqrr/)r4r��filename�frr:r:r;�
test_encoding�szRunPathTestCase.test_encoding)NF)NTT)rrDrEr�r�r�r�r�r�r�r�r�r�r�r�rr�r�r:r:r:r;r�Os

+	
r�r�)*Zunittestr[Zos.pathrr�rmrPZimportlib.machinery�importlib.utilr�r�Ztest.supportrrrrrrrZtest.support.script_helperr	r
rrrr
rrrrGZimplicit_namespacer?�dictrJrKr!ZTestCaserFrUr�r�mainr:r:r:r;�<module>sL$
O'


Youez - 2016 - github.com/yon3zu
LinuXploit