File: //usr/lib/python3.9/test/support/__pycache__/__init__.cpython-39.pyc
a
kx�g�� � @ s� d Z edkred��ddlZddlZddlZddlZddlZddl Z ddl
Z
ddlZ
ddlZddl
Z
ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlmZ g d�ZdZej
d kr�e
�� d
kr�dZdZd
Z dZ!G dd� de"�Z#G dd� de#�Z$G dd� de#�Z%G dd� dej&�Z'ej(�didd��Z)dd� Z*�djdd�dd �Z+d!d"� Z,d#d$� Z-d%d&� Z.d'd(� Z/�dkd)d*�Z0d+d,� Z1dZ2dZ3da4da5dZ6dZ7da8d-d.� Z9d/d0� Z:d1d2� Z;d3d4� Z<ej
�=d5��r�dld6d7�Z>d8d9� Z?d:d;� Z@d<d=� ZAd>d?� ZBnejCZ?ejDZ@d@d=� ZAdAd?� ZBdBdC� ZCdDdE� ZDdFdG� ZEdHdI� ZFdJdK� ZGdLdM� ZHdNdO� ZI�dmdPdQ�ZJdRdS� ZKdTdU� ZLdVdW� ZMdXdY� ZNdZd[� ZOd\ZPd]ZQe�ReS�Td^��=d_�d`�ZU�dndbdc�ZV�dodedf�ZW�dpdhdi�ZX�dqdkdl�ZYej
�=dm�ZZe[edn�Z\ej
d k�r&e\�r dondpZ]ndZ]ej^dmk�r<dqZ_ndrZ_ds�`e_e�a� �Z_dtZbduZcdvD ]DZdze�ee�fed��edk�r|eg�W n eg�y� Y n0 edZc �q��q\e_dw Zhej
dxk�r�ddliZiei�jdyeh�Zhe�k� ZldZmej^dzk�r4e�n� j
d{k�rte_d| Zmzem�oel� W n ep�y Y n0 eqd}emelf � dZmn@ej
dxk�rtzd~�rel� W n$ es�yr e_d�reld�� ZmY n0 dZtd�D ]@Z^ze^�rel� W n* es�y� e�fe_�e^ ZtY �q�Y n0 �q|ec�r�e_ec ZundZueu�p�e_Zve�w� ZxdZydZzej(�drd�d���Z{ej(�dsd�d���Z|ej(�dtd�d���Z}e[ed���r<ej(d�d�� �Z~ej��ej��e���Z�ej��e��Z�ej��e�d��Z��dud�d��Z�d�d�� Z�d�d�� Z�d�d�� Z��dvddd��d�d��Z��dwddd��d�d��Z�d�d�� Z�G d�d�� d�e��Z��dxd�d��Z�ej(d�d�� �Z�ej(due�dfd�d���Z�ej(d�d�� �Z�G d�d�� d�e��Z�G d�d�� d�ej�j��Z�G d�d�� d�e��Z�G d�d�� d�e��Z�e�e�ej�d��Z�e�e�ej�d��Z�e�e�ej�d��Z�ej(d�d�� �Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�ej(d�d�� �Z�d�d�� Z�d�Z�d�Z�e[ed���r�d�e� Z�d�Z�e�d� Z�d�dĄ Z�d�dƄ Z�d�Z�d�Z�d�dʄ Z�d�d̄ Z�d�d΄ Z�d�Z�d�e� Z�d{e� Z�d�e� Z�ej�Z�d�dӄ Z�G d�dՄ dՃZ��dyd�dׄZ�d�dل Z�G d�dۄ dۃZ�d�d݄ Z�d�d߄ Z�d�d� Z��dzd�d�Z�d�d� Z�d�d� Z�d�d� Z�d�d� Z�d�d� Z�d�d� Z�da�da�da�d�d� Z�d�d� Zːd{d�d��Z�d�d�� Z�d�d�� Z�d�d�� Z�e �o"ej
d k�o"e��d�� Z�e�j du�o4e� Z�e�Re�d��ZӐd|d�d��ZԐd �d� ZՐd�d� Zd�d� Z�daؐd�d� Zِd�d � Zڐd
�d� Z�ej(�d}�d�d
��Zܐd~�d�d�Zݐd�d� Z�ej(�d�d�d��Z�ej(�d�d� �Z�ej(�d�d� �Z�d�d� Z�d�d� Z�G �d�d� �de��Z�da�d�d� Z�d �d!� Z�da�d"�d#� Z�G �d$�d%� �d%�Z�da�d&�d'� Z�d(�d)� Z�d*�d+� Z�d,�d-� Z�d�d.��d/�d0�Z�d��d1�d2�Z�d��d3�d4�Z�G �d5�d6� �d6�Z�d7�d8� Z�d9�d:� Z��d��d;�d<�Z�g f�d=�d>�Z�da��d?�d@� Z�ej(�dA�dB� �Z��dC�dD� Z�G �dE�dF� �dF�Z��dG�dH� Z�G �dI�dJ� �dJ�Z�G �dK�dL� �dL�Z�e�� �Z G �dM�dN� �dN��Z�e� �Ze�jG �dO�dP� �dP���Z�e� �Ze�jG �dQ�dR� �dR���Z�e� �Z�dS�dT� �Ze�j �j
�Z�e�dUv �sDJ ��dV�dW� �ZG �dX�dY� �dY��Z
G �dZ�d[� �d[��Zd�d\��d]�d^��Z�d_�d`� �Z�da�db� �Zej(�dc�dd� ��Z�de�df� �Zej(�dg�dh� ��ZdS (� z7Supporting definitions for the Python regression tests.ztest.supportz.support must be imported from the test package� N� )�get_test_runner)^�
PIPE_MAX_SIZE�verbose�
max_memuse�
use_resources�failfast�Error�
TestFailed�
TestDidNotRun�ResourceDenied�
import_module�import_fresh_module�CleanImport�unload�forget�record_original_stdout�get_original_stdout�captured_stdout�captured_stdin�captured_stderr�TESTFN�SAVEDCWD�unlink�rmtree�temp_cwd�findfile�create_empty_file�can_symlink�fs_is_case_insensitive�is_resource_enabled�requires�requires_freebsd_version�requires_linux_version�requires_mac_ver�check_syntax_error�check_syntax_warning�TransientResource�time_out�socket_peer_reset�ioerror_peer_reset�BasicTestRunner�run_unittest�run_doctest�skip_unless_symlink�
requires_gzip�requires_bz2�
requires_lzma�
bigmemtest�bigaddrspacetest�cpython_only�
get_attribute�requires_IEEE_754�skip_unless_xattr�
requires_zlib�anticipate_failure�load_package_tests�detect_api_mismatch�check__all__�skip_if_buggy_ucrt_strfptime�ignore_warnings� is_jython�
is_android�check_impl_detail�
unix_shell�setswitchinterval�open_urlresource�
temp_umask�
reap_children�threading_setup�threading_cleanup�reap_threads�
start_threads�check_warnings�check_no_resource_warning�check_no_warnings�EnvironmentVarGuard�run_with_locale� swap_item� swap_attr�Matcher�set_memlimit�SuppressCrashReport�sortdict�run_with_tz�PGO�missing_compiler_executable�fd_count� ALWAYS_EQ�NEVER_EQ�LARGEST�SMALLEST�LOOPBACK_TIMEOUT�INTERNET_TIMEOUT�
SHORT_TIMEOUT�LONG_TIMEOUTg @�win32ZARM�
g N@g >@g �r@c @ s e Zd ZdZdS )r z*Base class for regression test exceptions.N��__name__�
__module__�__qualname__�__doc__� ri ri �+/usr/lib/python3.9/test/support/__init__.pyr v s r c @ s e Zd ZdZdS )r
zTest failed.Nrd ri ri ri rj r
y s r
c @ s e Zd ZdZdS )r zTest did not run any subtests.Nrd ri ri ri rj r | s r c @ s e Zd ZdZdS )r z�Test skipped because it requested a disallowed resource.
This is raised when a test calls requires() for a resource that
has not be enabled. It is used to distinguish between expected
and unexpected skips.
Nrd ri ri ri rj r s r Tc c sL | rBt �� �$ t �ddt� dV W d � qH1 s60 Y ndV dS )z�Context manager to suppress package and module deprecation
warnings when importing them.
If ignore is False, this context manager has no effect.
�ignorez.+ (module|package)N)�warnings�catch_warnings�filterwarnings�DeprecationWarning�rk ri ri rj �_ignore_deprecated_imports� s
�&rq c s � fdd�}|S )z�Decorator to suppress deprecation warnings.
Use of context managers to hide warnings make diffs
more noisy and tools like 'git blame' less useful.
c s t �� ��� fdd��}|S )Nc sP t �� �4 t jd� d� �| g|�R i |��W d � S 1 sB0 Y d S )Nrk ��category)rl rm �simplefilter)�self�args�kwargs)rs �testri rj �wrapper� s
z3ignore_warnings.<locals>.decorator.<locals>.wrapper�� functools�wraps)rx ry rr �rx rj � decorator� s z"ignore_warnings.<locals>.decoratorri )rs r~ ri rr rj r>