File: //usr/lib/python3.6/site-packages/future/backports/test/__pycache__/support.cpython-36.opt-1.pyc
3
�c� � � @ sn d Z ddlmZmZmZmZ ddlmZ ddlm Z m
Z
mZmZm
Z
mZ ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZeed�s�ddlZddlZddlZddlZddlZddl Z yddl!Z!W n" e"k
�r ddl#m!Z! Y nX ddl$Z$ddl%Z&ddl'Z'ddl(Z(y.ej)�rFddl*Z*ddl+Z+nddl,Z*ddl+Z+W n e"k
�rv dZ*dZ+Y nX yddl-Z.W n e"k
�r� dZ.Y nX yddl/Z/W n e"k
�r� dZ/Y nX yddl0Z0W n e"k
�r� dZ0Y nX yddl1Z1W n e"k
�r dZ1Y nX yddl2Z2W n e"k
�r> dZ2Y nX dd d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQgJZ3G dRd� de4�Z5G dSd � d e5�Z6G dTd
� d
ej7�Z8ej9d�dVdW��Z:d�dYd�Z;dZd[� Z<d\d]� Z=d^dL� Z>f f dXfd_dH�Z?d`d?� Z@daZAdZBdaCdaDdXZEdZFdaGdbd� ZHdcd� ZIddd� ZJejjKde��r�d�dfdg�ZLdhdi� ZMdjdk� ZNdldm� ZOnejPZMejQZNejRZOdnd� ZPdodp� ZQdqd� ZRdrds� ZSdtd� ZTejjKde��rddlUZUddlVZUdudv� ZWndwdv� ZWdxd� ZXd�dyd�ZYdzd{� ZZd|d� Z[d}d� Z\d~d� Z]dZ^d�Z_ej`ejafd�d�Zbe^fd�d�Zcd�d�� Zded� Zed�Zf�d Zgejhe/d��Ziejhe1d��Zjejhe2d��ZkejjKd��Zlejmd�k�r�d�Znnd�Znd�joenejp� �Znejq� Zrej9�dd�d!��Zseed���rej9d�d2� �Zteudfd�d"�Zvd�d#� Zwd�d$� Zxd�d�� Zyd�d%� Zzd�d&� Z{G d�d�� d�e|�Z}�dd�d��Z~ej9d�d'� �ZG d�d(� d(e|�Z�ej)�r�ddl�Z�e�j�j�Z�nddl�Z�e�j�Z�G d�d)� d)e��Z�G d�d�� d�e|�Z�G d�d*� d*e|�Z�e�e�ej�d��Z�e�ej�ej�d��Z�e�e�ej�d��Z�ej9d�f fd�d3��Z�ej9d�d�� �Z�d�d+� Z�d�d-� Z�d�d,� Z�d�d�� Z�ej9d�d�� �Z�d�d�� Z�d�Z�d�Z�eed���r�d�e� Z�d�Z�e�d� Z�d�d�� Z�d�d�� Z��dZ��dZ�d�d�� Z�d�d1� Z�d�dM� Z��dZ�d�e� Z�d�e� Z�d�e� Z�ej�Z�d�d4� Z�G d�dń d�e|�Z��dd�d5�Z�d�d6� Z�G d�d7� d7e|�Z�d�dʄ Z�d�d̄ Z�d�d=� Z��dd�dτZ�d�dф Z�d�d>� Z�d�dԄ Z�d�dք Z�d�d Z�d�dڄ Z�d�d8� Z��dd�d9�Z�d�dބ Z�d�d� Z�d�d:� Z�d�d;� Z�d�d� Z�d�d<� Z�ej9d�dA� �Z�ej9d�d@� �Z�d�d� Z�d�d� Z�G d�dC� dCe&j�jƃZ�G d�dD� dDe|�Z�da�d�dE� Z�d�dF� Z�da�d�d� Z�d�dG� Z�ejjKde��rTej9d�dQ� �Z�nej9d�dQ� �Z�d�d�� Z�dS ( zwSupporting definitions for the Python regression tests.
Backported for python-future from Python 3.3 test/support.py.
� )�absolute_import�division�print_function�unicode_literals)�utils)�str�range�open�int�map�listN�skip)� sysconfig�Error�
TestFailed�ResourceDenied�
import_module�verbose�
use_resources�
max_memuse�record_original_stdout�get_original_stdout�unload�unlink�rmtree�forget�is_resource_enabled�requires�requires_freebsd_version�requires_linux_version�requires_mac_ver�find_unused_port� bind_port�IPV6_ENABLED� is_jython�TESTFN�HOST�SAVEDCWD�temp_cwd�findfile�create_empty_file�sortdict�check_syntax_error�open_urlresource�check_warnings�CleanImport�EnvironmentVarGuard�TransientResource�captured_stdout�captured_stdin�captured_stderr�time_out�socket_peer_reset�ioerror_peer_reset�run_with_locale�
temp_umask�transient_internet�set_memlimit�
bigmemtest�bigaddrspacetest�BasicTestRunner�run_unittest�run_doctest�threading_setup�threading_cleanup�
reap_children�cpython_only�check_impl_detail�
get_attribute� swap_item� swap_attrZrequires_IEEE_754�TestHandler�Matcher�can_symlink�skip_unless_symlink�skip_unless_xattr�import_fresh_module�
requires_zlib�
PIPE_MAX_SIZE�failfast�anticipate_failure�run_with_tzZ
requires_gzip�requires_bz2�
requires_lzma�suppress_crash_popupc @ s e Zd ZdZdS )r z*Base class for regression test exceptions.N)�__name__�
__module__�__qualname__�__doc__� r[ r[ �/usr/lib/python3.6/support.pyr b s c @ s e Zd ZdZdS )r zTest failed.N)rW rX rY rZ r[ r[ r[ r\ r e s 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.
N)rW rX rY rZ r[ r[ r[ r\ r h s Tc c s8 | r.t j� � t jddt� dV W dQ R X 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)r] r[ r[ r\ �_ignore_deprecated_importsp s
rb Fc C sT t |��B y
tj| �S tk
rD } ztjt|���W Y dd}~X nX W dQ R X dS )z�Import and return the module to be tested, raising SkipTest if
it is not available.
If deprecated is True, any module or package deprecation messages
will be suppressed.N)rb � importlibr �ImportError�unittest�SkipTestr )�name�
deprecated�msgr[ r[ r\ r s
c C s^ | t jkrt| � t j| = x>tt j�D ]0}|| ks@|j| d �r&t j| ||<