File: //usr/local/lib/python3.10/test/test_importlib/__pycache__/test_windows.cpython-310.opt-1.pyc
o
�i
� @ sZ d dl mZ e�d�ZddlZddlZddlZddlZddl Z ddl
mZ ddlm
Z
ddlmZ d dlmZ e
jd d
gd� ddlmZmZmZmZmZmZmZmZmZ d
d� Zdd� Zeddd��Ze�ej �!d
�d�G dd� d��Z"ej#e"ed�\Z$Z%e�ej �!d
�d�G dd� d��Z&ej#e&ed�\Z'Z(e�ej �!d
�d�G dd� dej)��Z*dS )� )�utilzimportlib.machinery� N)�support)�
import_helper)�contextmanager)�temp_module�winreg�win)Zrequired_on) � CreateKey�HKEY_CURRENT_USER�SetValue�REG_SZ�KEY_ALL_ACCESS�EnumKey�CloseKey� DeleteKey�OpenKeyc C sn dddd�} dt jv rt jd | v r| t jd S dtj�� v r"dS dtj�� v r+dS dtj�� v r4d S tjS )
N�win32z win-amd64z win-arm32)Zx86Zx64ZarmZVSCMD_ARG_TGT_ARCHZamd64z(arm)z(arm64)z win-arm64)�os�environ�sys�version�lower�platform)ZTARGET_TO_PLAT� r �=/usr/local/lib/python3.10/test/test_importlib/test_windows.py�get_platform s �
r c C sn z t | |td�}W n
ty Y d S w zt|d�}W n ty% Y nw t||� qt|� t| |� d S )N)�accessTr )r r �OSErrorr �delete_registry_treer r )�root�subkey�hkeyZ subsubkeyr r r r ( s ��
�r c c s � | j jr
| j j}n| j j}|j|dtjd d� d�}d�tjjtjj�}zXt |d��?}zt
t|� | j jr>tj
�|�}n|}W n tyL |}Y nw tt|�}|d u rZ|d }t|dt|� d V W d � n1 snw Y W |r}tt|� d S d S |r�tt|� w w )Nz%d.%d� )�fullname�sys_versionz Software\Python\PythonCore\{}.{}za = 1z.py� )�WindowsRegistryFinder�DEBUG_BUILD�REGISTRY_KEY_DEBUG�REGISTRY_KEY�formatr �version_info�major�minorr r r r �path�dirnamer r
r r
r ) � machinery�namer/ r �keyZbase_key�locationZ
delete_keyr! r r r �setup_module8 sB �
��
��
����r5 zrequires Windowsc @ s: e Zd Zd�e�� �Zdd� Zdd� Zdd� Z dd � Z
d
S )�WindowsRegistryFinderTestsz spamham{}c C s | j j�d�}| �|d � d S )N�spam)r1 r'