File: //opt/saltstack/salt/lib/python3.10/site-packages/aiohttp/__pycache__/test_utils.cpython-310.pyc
o
;j<` � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl
mZmZ ddl
mZmZ ddlmZ ddlmZmZmZmZmZmZmZ ddlmZmZ ddlmZ dd lm Z m!Z! dd
l"m#Z# ddl$Z$ddl%m&Z&m'Z'm(Z(m)Z) dd
l*m+Z+m,Z, ddl
m-Z- ddl.m/Z/ ddl0m1Z1 ddl2m3Z3 ddl4m5Z5m6Z6 ddl7m8Z8m9Z9 ddl:m;Z; ddl<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZE ddlFmGZG er�ddlHmIZI neZIejJdkr�er�ddlmKZK ejJdkr�ddlmLZL neZLede=d�ZMede?d�ZNejOdk�oejPdkZQejRfd eSd!ejTd"ejfd#d$�ZUd eSd%eVd!ejTd"ejfd&d'�ZWd"eVfd(d)�ZXG d*d+� d+e�ZYG d,d-� d-eY�ZZG d.d/� d/eY�Z[G d0d1� d1eeNeMf �Z\G d2d3� d3e�Z]d4ed5ed6ed"efd7d8�Z^eg ej_f Z`ejaejbd9fd:e`d;ecd"eej_ fd<d=��Zdejbfd:e`d"ej_fd>d?�Zed]d@ej_d;ecd"dfdAdB�Zfd"ejgfdCdD�Zhd^dEeIdB d"ejifdFdG�Zj d^e3e5dd�d9de3e3e3e8ddHdIdJ�dKeSdLeSdMedNedOe5dPecdQedRedSedTedUe9dEeIdB dVeVd@ed"eAfdWdX�Zke3e3fdYedZed"efd[d\�ZldS )_zUtilities shared by tests.� N)�ABC�abstractmethod)�Callable�Iterator)�
TracebackType)�
TYPE_CHECKING�Any�Generic�Literal�TypeVar�cast�overload)�IsolatedAsyncioTestCase�mock)�Signal)�CIMultiDict�CIMultiDictProxy)�URL)�_BaseRequestContextManager�_RequestContextManager�_RequestOptions�_WSRequestContextManager� )�
ClientSession�hdrs)�AbstractCookieJar)�ClientResponse)�ClientWebSocketResponse)�sentinel)�HttpVersion�RawRequestMessage)�
EMPTY_PAYLOAD�StreamReader)�StrOrURL) �Application� AppRunner�BaseRequest�
BaseRunner�Request�Server�ServerRunner�SockSite�UrlMappingMatchInfo)�_RequestHandler)�
SSLContext�� � )�Unpack)�Self�_ApplicationNone�_Request)�bound�posix�cygwin�host�family�returnc C s t | d|�S )Nr )�get_port_socket)r9 r: � r= �F/opt/saltstack/salt/lib/python3.10/site-packages/aiohttp/test_utils.py�get_unused_port_socketF s r? �portc C s6 t � |t j�}tr|�t jt jd� |�| |f� |S )Nr )�socket�SOCK_STREAM�
REUSE_ADDRESS�
setsockopt�
SOL_SOCKET�SO_REUSEADDR�bind)r9 r@ r: �sr= r= r>