File: //opt/alt/python312/lib64/python3.12/test/__pycache__/test_runpy.cpython-312.opt-2.pyc
�
~h�eч � �N � d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
Z
d dlZd dlZd dl
Z
d dlZd dlZd dlmZmZmZmZ d dlmZmZmZ d dlmZmZ d dlmZmZ d dlZd dlm Z m!Z!m"Z"m#Z# dZ$ddddddd�Z%eed d
gejL d dd e'e%dd
d�� d�Z(e(jS e%� G d� d� Z* G d� dejV e*� Z, G d� dejV e*� Z- G d� dejV e*� Z. G d� dejV � Z/e0dk( r ejb � yy)� N)�
no_tracing�verbose�requires_subprocess�requires_resource)�forget�make_legacy_pyc�unload)�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 � � e Zd Zg d�Zd� Zd� Zy)�CodeExecutionMixin)�name�parent�origin�cached�has_location�submodule_search_locationsc �" � |j � }|j � }t |� D ]W }|j d� s�|j d� s�'||vr|j |� ||d vs�D|d j |� �Y |j d� }|j d� }|�| j |� n�|j �8| j t |j � t |j � � | j D ]5 }d|z }|t ||� f}|t ||� f}| j ||� �7 | j t |� t |� � |D ]"