File: //opt/alt/python312/lib64/python3.12/test/libregrtest/__pycache__/main.cpython-312.pyc
�
�h�e�_ � �T � d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dl m
Z
mZ ddlm
Z
mZ ddlmZmZmZ ddlmZ ddlmZ dd lmZ dd
lmZmZ ddlmZmZ ddlmZm Z dd
l!m"Z"m#Z# ddl$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8 G d� d� Z9dd�Z:y)� N)�support)� os_helper�
MS_WINDOWS� )�_parse_args� Namespace)� findtests�split_test_packages�
list_cases)�Logger)�setup_pgo_tests)�State)�TestResults�EXITCODE_INTERRUPTED)�RunTests�HuntRefleak)�
setup_process�setup_test_dir)�run_single_test�PROGRESS_MIN_TIME)�StrPath�StrJSON�TestName�TestList� TestTuple�
TestFilter�strip_py_suffix�count�format_duration� printlist�get_temp_dir�get_work_dir�exit_timeout�display_header�cleanup_temp_dir�
print_warning�is_cross_compiled�get_host_runner�process_cpu_count�EXIT_TIMEOUTc �4 � e Zd ZdZd!dedefd�Zd"d�Zd#dedz de e
edz f fd �Zede
fd
�� Z
defd�Zdefd
�Zd� Zdedefd�Zd� Zd� Zdededdfd�Zd� Zd� Zde
fd�Zde
dedz defd�Zde
dedz defd�Zd� Zd� Zd� Zd� Z d� Z!d#dedz fd �Z"y)$�Regrtestaa Execute a test suite.
This also parses command-line options and modifies its behavior
accordingly.
tests -- a list of strings containing test names (optional)
testdir -- the directory in which to look for tests (optional)
Users other than the Python test suite will certainly want to
specify testdir; if it's omitted, the directory containing the
Python test suite is searched for.
If the tests argument is omitted, the tests listed on the
command-line will be used. If that's empty, too, then all *.py
files beginning with test_ will be used.
The other default arguments (verbose, quiet, exclude,
single, randomize, use_resources, trace, coverdir,
print_slow, and random_seed) allow programmers calling main()
directly to set the values that would normally be set by flags
on the command line.
�ns�_add_python_optsc �d � t |j � | _ |j | _ |j | _ |j | _ t � | _ d | _ t | j | j | j � | _ |j | _ |j | _
|j | _ |j | _ |j$ | _ |j( | _ |j, | _ |j0 xs |j2 | _ |xr |j6 | _ |j: | _ |j<