Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
test_utils.cpython-313.pyc270 linesDownload Raw Back to __pycache__
1�

2��jc]� ��SrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK	r	SSK3JrJr SSK
Jr SSKJrJrJrJrJrJrJrJrJrJrJr SSKJrJr SSKJr SSK J!r!J"r" SS	K#J$r$ SSK%r%SS4K&J'r'J(r(J)r) SSK*J+r+J,r, SS
K5J-r- SSK.J/r/ SSK0J1r1 SSK2J3r3 SSK4J5r5J6r6 SSK7J8r8J9r9 SSK:J;r; SSK<J=r=J>r>J?r?J@r@JArAJBrBJCrCJDrDJErE SSKFJGrG \(aSSKHJIrI OSrI\R�S:�a
\(aSSKJKrK \R�S:�aSSKJLrL O\rL\"S\=S5rM\"S\?S9rN\R�S:H=(a \R�S:grQ\R�4S\SS \R�S!\R4S"jjrUS\SS#\VS \R�S!\R4S$jrWS!\V4S%jrX"S&S'\5rY"S(S)\Y5rZ"S*S+\Y5r["S,S-\\N\M45r\"S.S/\5r]S0\S1\S2\S!\4S3jr^\/\R�4r`\R�\R�S44S5\`S6\cS!\\R�4S7jj5rd\R�4S5\`S!\R�4S8jjreSQS9\R�S6\cS!S4S:jjrfS!\R�4S;jrhSRS<\\IS!\R�4S=jjrjSR\3\5"SS5S4S\3\3\3\8SS>S?S@.SA\SSB\SSC\SD\SE\5SF\cSG\SH\SI\SJ\SK\9S<\\ISL\VS9\S!\A4SMjjjrk\3\34SN\SO\S!\4SPjjrlg)SzUtilities shared by tests.�N)�ABC�abstractmethod)�
TracebackType)�
TYPE_CHECKING�Any�Callable�Generic�Iterator�List�Optional�Type�TypeVar�cast�overload)�IsolatedAsyncioTestCase�mock)�Signal)�CIMultiDict�CIMultiDictProxy)�URL)�_RequestContextManager�_RequestOptions�_WSRequestContextManager�)�
ClientSession�hdrs)�AbstractCookieJar)�ClientResponse)�ClientWebSocketResponse)�sentinel)�HttpVersion�RawRequestMessage)�
EMPTY_PAYLOAD�StreamReader)�StrOrURL)	�Application�	AppRunner�BaseRequest�6BaseRunner�Request�Server�ServerRunner�SockSite�UrlMappingMatchInfo)�_RequestHandler)�7SSLContext���)�Unpack)�Self�_ApplicationNone�_Request)�bound�posix�cygwin�host�family�returnc��[USU5$)Nr)�get_port_socket)r;r<s  �XD:\code\apps\devtools\python\user_packages\Python313\site-packages\aiohttp/test_utils.py�get_unused_port_socketrAPs���4��F�+�+��portc���[R"U[R5n[(a/UR[R[R8S5 UR
X45 U$)Nr)�socket�SOCK_STREAM�
REUSE_ADDRESS�9setsockopt�10SOL_SOCKET�SO_REUSEADDR�bind)r;rCr<�ss    r@r?r?VsP��	�
�
�f�f�0�0�1�A��}�	11���V�&�&��(;�(;�Q�?��F�F�D�<���HrBc��[R"[R[R5nURS5 [	[12UR
5S5sSSS5 $!,(df   g=f)z1Return a port that is unused on the current host.)�	127.0.0.1rrN)rE�AF_INETrFrKr�int�getsockname)rLs r@�unused_portrRcsJ��	���v�~�~�v�'9�'9�	:�a�	���� ��C������+�,�13;�	:�	:�s�2A0�014A>c���\rSrSrSrSSSSS\S.S\S\\RS	\S15\\16S\S\\\17\
R/\
R4S
\SS4SjjrS S\\RS
\SS4Sjjr\S
\S\4Sj5rS\S\4Sjr\S\4Sj5r\S\4Sj5r\S\4Sj5rS!SjrS!SjrS\\\ S\\ S\\!SS4Sjr"S"Sjr#S\\\ S\\ S\\!SS4Sjr$Sr%g)#�BaseTestServer�jF�NrN)�scheme�loopr;rC�skip_url_asserts�socket_factoryrWrXr;rCrYrZ�kwargsr=c�v�X lSUlSUlX0lX@lSUlXlXPlX`lg)NF)	�_loop�runner�_rootr;rC�_closedrWrYrZ)�selfrWrXr;rCrYrZr[s        r@�__init__�BaseTestServer.__init__ms9���18�,0���$(��19��	��	������ 0��,�rBc��^# �UR(agXlURSS5UlUR"SSS0UD6IShv�NUlURR5IShv�N UR(dSUlURn[R"UR5RnUS:XaSURS3nUS:Xa[RO[RnURURURU5nUR!5SS	uUlUl[#URX`RS209nUR%5IShv�N UR&nUceUR(n	U	ceU	SR!5SUlUR*(dUR(aSOS
Ul[-UR*SUSUR35UlgGN�GN�![a SnGNcf=fN�7f)N�ssl�handler_cancellationTr���[�]�)�sock�ssl_contextr�https�httpz://�:�)r^r]�pop�_ssl�_make_runner�setuprCr;�	ipaddress�21ip_address�version�22ValueErrorrE�AF_INET6rOrZrQr-�start�_server�socketsrWrr_)23rarXr[�
absolute_hostrxr<�_sock�site�serverr}s24          r@�start_server�BaseTestServer.start_server�s�����;�;���25��J�J�u�d�+��	� �-�-�R�4�R�6�R�R����k�k���!�!�!��y�y��D�I��	�	�
�	��*�*�4�9�9�5�=�=�G��a�<���	�	�{�!�,�M�$+�q�L����f�n�n���#�#�D�I�I�t�y�y�&�A��$�0�0�2�2�A�6���	�4�9�����%�Y�Y�G���j�j�l��������!�!�!��.�.���"�"�"��A�J�*�*�,�Q�/��	��{�{�%)�Y�Y�'�F�D�K��D�K�K�=��M�?�!�D�I�I�;�G�H��26�/S�!���	��G�	��	�sV�AH-�	H�27&H-�0H�1(H-�*H�B4H-�8H+�9BH-�H-�H(�$H-�'H(�(H-c��# �g7f�Nrq�rar[s  r@rt�BaseTestServer._make_runner�s����s��pathc��URce[U5nUR(d.UR(aeURR	U5$[[UR5[U5-5$r�)r_rrY�absolute�join�str)rar��urls   r@�make_url�BaseTestServer.make_url�s`���z�z�%�%�%��$�i���$�$��|�|�#�#��:�:�?�?�3�'�'��s�4�:�:���T��2�3�3rBc��URSL$r�)r^�ras r@�started�BaseTestServer.started�s���{�{�$�&�&rBc��UR$r�)r`r�s r@�closed�BaseTestServer.closed�����|�|�rBc�Z�URnUceURceUR$r�)r^r�)rar^s  r@�handler�BaseTestServer.handler�s3�������!�!�!��}�}�(�(�(��}�}�rBc���# �UR(aYUR(dGURceURR5IShv�N SUlSUlSUlgggN7f)a0Close all fixtures created by the test client.28 29After that point, the TestClient is no longer usable.30 31This is an idempotent function: running close multiple times32will not have any additional effects.33 34close is also run when the object is garbage collected, and on35exit when used as a context manager.36 37NT)r�r�r^�cleanupr_rCr`r�s r@�close�BaseTestServer.close�sY����<�<�����;�;�*�*�*��+�+�%�%�'�'�'��D�J��D�I��D�L�!,�<�'�s�AA0�A.�A0c��[S5e�NzUse async with instead��	TypeErrorr�s r@�	__enter__�BaseTestServer.__enter__�����0�1�1rB�exc_type�	exc_value�	tracebackc��gr�rq�rar�r�r�s    r@�__exit__�BaseTestServer.__exit__����	
rBc��T# �URURS9IShv�N U$N7f�N�rX)r�r]r�s r@�38__aenter__�BaseTestServer.__aenter__�s*������T�Z�Z��0�0�0���	1�s�(�&�(c��@# �UR5IShv�N gN7fr��r�r�s    r@�	__aexit__�BaseTestServer.__aexit__������j�j�l�������)39r`r]r_rsr;rCr^rWrYrZr��r=N)r=rT)&�__name__�40__module__�__qualname__�__firstlineno__�__test__r?r�r�asyncio�AbstractEventLooprP�boolrrE�
AddressFamilyrrbr�rr)rtr%rr��propertyr�r�r+r�r�r�r
�
BaseExceptionrr�r�r��__static_attributes__rqrBr@rTrTjs����H�41�48��"�!&�
�-��-��w�0�0�1�	-�42�-��s�m�
-��-�!�
�#�v�+�+�,�f�m�m�;�43�-��-�44�-�0;?�I��W�6�6�7�I�JM�I�	
�I�@�
�3�
�:�
��
�4�X�4�#�4��'��'��'������������� �&2�
��4�
�.�/�
��M�*�
��M�*�	
�4546�
����4�
�.�/���M�*���M�*�	�4748�rBrTc�d^�\rSrSrSSSS.S\S\S\S	\\S49\450U4Sjjjr	S51\S\524S
jrSrU=r
$)�53TestServer��rVrNN�rWr;rC�apprWr;rCr[c�8>�Xl[TU]"SX#US.UD6 g�Nr�rq)r��superrb)rar�rWr;rCr[�	__class__s      �r@rb�TestServer.__init__�s!�����
���G���G��GrBr=c��6# �[UR40UD6$7fr�)r'r�r�s  r@rt�TestServer._make_runner�s�������,�V�,�,�s�)r�)r�r�r�r�r&r�rrPrrbr)rtr��
__classcell__�r�s@r@r�r��sk���54��"�
55H�
�56H��	57H�58�59H��s�m�
60H��61H�62H�-�3�-�:�-�-rBr�c
�p^�\rSrSrSSSS.S\S\S\S	\\S63\SS4U4Sjjjr	SS
\64S65\S\4SjjrSr
U=r$)�
RawTestServer��rVrNNr�r�rWr;rCr[r=c�8>�Xl[TU]"SX#US.UD6 gr�)�_handlerr�rb)rar�rWr;rCr[r�s      �r@rb�RawTestServer.__init__s!��� �
�
���G���G��GrB�debugc��l# �[UR4URUS.UD6n[U4SU0UD6$7f)N)rXr�r�)r+r�r]r,)rar�r[�srvs    r@rt�RawTestServer._make_runners8����T�]�]�K����5�K�F�K���C�7�u�7��7�7�s�24)r�)T)r�r�r�r�r/r�rrPrrbr�r,rtr�r�r�s@r@r�r��s}���66��"�
67H� �68H��	69H�70�71H��s�m�
72H��73H�74�75H�76H�8��8�s�8�|�8�8rBr�c���\rSrSrSrSr\SS.SSS\S	\\	S77\78SS479Sjj5r\SS.SS
S\S	\\	S80\81SS482Sjj5rSSS.S\S	\\	S\\
RS83\84SS485SjjrS8Sjr\S\4Sj5r\S\\4Sj5r\S\4Sj5r\S\4Sj5r\S\4Sj5rS\S\4SjrS\S\S86\87S\4Sjr\R@S:�az\!(asS\S\S88\"\#S\$4Sjr%S\S89\"\#S\$4Sjr&S\S90\"\#S\$4Sjr'S\S91\"\#S\$4S jr(S\S92\"\#S\$4S!jr)S\S93\"\#S\$4S"jr*S\S94\"\#S\$4S#jr+S\S95\"\#S\$4S$jr,OZS\S\S96\97S\$4S%jr%S\S98\99S\$4S&jr&S\S100\101S\$4S'jr)S\S102\103S\$4S(jr'S\S104\105S\$4S)jr(S\S106\107S\$4S*jr*S\S108\109S\$4S+jr+S\S110\111S\$4S,jr,S\S112\113S\-4S-jr.S\S114\115S\/4S.jr0S8S/jr1S8S0jr2S1\\3\4S2\\4S3\\5SS4S4jr6S\74S5jr8S1\\3\4S2\\4S3\\5SS4S6jr9S7r:g)9�116TestClientizV117A test client implementation.118 119To write functional tests for aiohttp based servers.120 121FN)�122cookie_jarraz TestClient[Request, Application]r�r�r[r=c��gr�rq�rar�r�r[s    r@rb�TestClient.__init__���rBzTestClient[_Request, None]c��gr�rqr�s    r@rbr�#r�rB)r�rXrXc��[U[5(d[S[U5-5eXlX0lUc[R"SUS9n[SX2S.UD6Ul	SURl123SUl/Ul/Ul
g)Nz2server must be TestServer instance, found type: %rT)�unsaferX)rXr�Frq)�124isinstancerTr��typer|r]�aiohttp�	CookieJarr�_session�_retry_connectionr`�125_responses�_websockets)rar�r�rXr[s     r@rbr�+s����&�.�1�1��D�t�F�|�S��
����126��� �*�*�$�T�B�J�%�Q�4�Q�&�Q��
�*/��
�
�'����02���:<��rBc��f# �URRURS9IShv�N gN7fr�)r|r�r]r�s r@r��TestClient.start_serverAs$����l�l�'�'�T�Z�Z�'�8�8�8�s�'1�/�1c�.�URR$r�)r|r;r�s r@r;�TestClient.hostD����|�|� � � rBc�.�URR$r�)r|rCr�s r@rC�TestClient.portHr�rBc��UR$r�)r|r�s r@r��TestClient.serverLr�rBc�0�[URSS5$)Nr�)�getattrr|r�s r@r��TestClient.appPs���t�|�|�U�D�1�1rBc��UR$)z�An internal aiohttp.ClientSession.127 128Unlike the methods on the TestClient, client session requests129do not automatically include the host in the url queried, and130will require an absolute path to the resource.131 132)r�r�s r@�session�TestClient.sessionTs���}�}�rBr�c�8�URRU5$r�)r|r�)rar�s  r@r��TestClient.make_url_s���|�|�$�$�T�*�*rB�methodc��# �URR"XRU540UD6IShv�NnURR	U5 U$N!7fr�)r��requestr�r��append)rarr�r[�resps     r@�_request�TestClient._requestbsI����]�]�*�*�6�=�=��3F�Q�&�Q�Q�������t�$���R���0A�A�"Ar1c��gr�rq�rarr�r[s    r@r�TestClient.requestls��%(rBc��gr�rq�rar�r[s   r@�get�TestClient.getp���&)rBc��gr�rqr
s   r@�options�TestClient.optionsvrrBc��gr�rqr
s   r@�head�TestClient.head|rrBc��gr�rqr
s   r@�post�TestClient.post�rrBc��gr�rqr
s   r@�put�TestClient.put�rrBc��gr�rqr
s   r@�patch�TestClient.patch�rrBc��gr�rqr
s   r@�delete�TestClient.delete�rrBc�:�[UR"X40UD65$)z�Routes a request to tested http server.133 134The interface is identical to aiohttp.ClientSession.request,135except the loop kwarg is overridden by the instance used by the136test server.137 138)rrr139s    r@rr�s��*�$�-�-��*O��*O�P�PrBc�X�[UR"[RU40UD65$)zPerform an HTTP GET request.)rrr�METH_GETr
s   r@rr��!��)�$�-�-��
�
�t�*V�v�*V�W�WrBc�X�[UR"[RU40UD65$)zPerform an HTTP POST request.)rrr�	METH_POSTr
s   r@rr��"��)�$�-�-�����*W�PV�*W�X�XrBc�X�[UR"[RU40UD65$)z Perform an HTTP OPTIONS request.)rrr�METH_OPTIONSr
s   r@rr�s(��)��
�
�d�/�/��@��@��
rBc�X�[UR"[RU40UD65$)zPerform an HTTP HEAD request.)rrr�	METH_HEADr
s   r@rr�r)rBc�X�[UR"[RU40UD65$)zPerform an HTTP PUT request.)rrr�METH_PUTr
s   r@rr�r&rBc�X�[UR"[RU40UD65$�zPerform an HTTP PATCH request.)rrr�140METH_PATCHr
s   r@rr�s&��)��
�
�d�o�o�t�>�v�>��
rBc�X�[UR"[RU40UD65$r1)rrr�METH_DELETEr
s   r@r!r"�s(��)��
�
�d�.�.��?��?��
rBc�:�[UR"U40UD65$)zZInitiate websocket connection.141 142The api corresponds to aiohttp.ClientSession.ws_connect.143 144)r�_ws_connectr
s   r@�145ws_connect�TestClient.ws_connect�s��(��(8�(8��(H��(H�I�IrBc��# �URR"URU540UD6IShv�NnURR	U5 U$N!7fr�)r�r7r�r�r)rar�r[�wss    r@r6�TestClient._ws_connect�sK����=�=�+�+�D�M�M�$�,?�J�6�J�
J��������#��	�K�rc��n# �UR(d�URHnUR5 M URHnUR5IShv�N M URR5IShv�N UR146R5IShv�N SUlggNUN1N7f)aClose all fixtures created by the test client.147 148After that point, the TestClient is no longer usable.149 150This is an idempotent function: running close multiple times151will not have any additional effects.152 153close is also run on exit when used as a(n) (asynchronous)154context manager.155 156NT)r`r�r�r�r�r|)rarr:s   r@r��TestClient.close�s�����|�|������157�158��(��&�&���h�h�j� � �'��-�-�%�%�'�'�'��,�,�$�$�&�&�&��D�L��!�'�&�s6�AB5�B/�%B5�?B1�!B5�!B3�"B5�1B5�3B5c��[S5er�r�r�s r@r��TestClient.__enter__�r�rBr��exc�tbc��gr�rq�rar�r@rAs    r@r��TestClient.__exit__�r�rBc��B# �UR5IShv�N U$N7fr�)r�r�s r@r��TestClient.__aenter__�s!������!�!�!���	"�s���c��@# �UR5IShv�N gN7fr�r�rCs    r@r��TestClient.__aexit__�r�r�)r`r]r�r|r�r�r�);r�r�r�r��__doc__r�rr�rrrrbrTr�r�r�r�r�r;rPrCr�r6r�rr�r%rr�rr�sys�version_inforr4rrrrrrrrrr!rr7rr6r�r�r
r�rr�r5r�r�r�rqrBr@r�r�s�����H�
�15937�	�0�����.�/�	�160��161�
����16237�	�*�����.�/�	�163��164�
���37�48�=��=��.�/�	=�165�w�0�0�1�=��
=�166�=�,9��!�c�!��!��!�h�s�m�!��!��������2�%�2��2�������+�X�+�#�+����!)��58��	�����7�"�}�	)��	)�%-�	)�9?��9P�	)�
#�	)�	)��	)��_�-�	)�$�		)�	)��	)��_�-�	)�$�		)�	)��	)��_�-�	)�$�		)�	)��	)��_�-�	)�$�		)�	)��	)��_�-�	)�$�		)�	)��	)��_�-�	)�$�		)�	)��	)��_�-�	)�$�		)�167	Q��168	Q�%-�169	Q�9<�170	Q�
#�171	Q�	X�H�	X��	X�8N�	X�	Y�X�	Y��	Y�9O�	Y�	��	�C�	�<R�	�	Y�X�	Y��	Y�9O�	Y�	X�H�	X��	X�8N�	X�	�h�	�#�	�:P�	�	�x�	�3�	�;Q�	�J�x�J�3�J�;S�J����(+��	 �� �*2�
��4�
�.�/�
��m�
$�
�
�]�#�	
�172173�
��$����4�
�.�/���m�
$��
�]�#�	�174175�rBr�c��\rSrSrSrS\4SjrS\4SjrSSjrSSjr	SS	jr176SS177jrS\S\4Sjr
S
\S\\\44SjrSrg)�AioHTTPTestCaseia�A base class to allow for unittest web applications using aiohttp.178 179Provides the following:180 181* self.client (aiohttp.test_utils.TestClient): an aiohttp test client.182* self.loop (asyncio.BaseEventLoop): the event loop in which the183    application and server are running.184* self.app (aiohttp.web.Application): the application returned by185    self.get_application()186 187Note that the TestClient's methods are asynchronous: you have to188execute function on the test client using asynchronous methods.189r=c��*# �UR5$7f)ziGet application.190 191This method should be overridden192to return the aiohttp.web.Application193object to test.194)�get_appr�s r@�get_application�AioHTTPTestCase.get_applications����|�|�~��s�c��[S5e)zaObsolete method used to constructing web application.195 196Use .get_application() coroutine instead.197z+Did you forget to define get_application()?)�RuntimeErrorr�s r@rO�AioHTTPTestCase.get_apps��198�H�I�IrBNc��r# �[R"5UlUR5IShv�N$N7fr�)r��get_running_looprX�199setUpAsyncr�s r@�200asyncSetUp�AioHTTPTestCase.asyncSetUp&s(����,�,�.��	��_�_�&�&�&�&�s�.7�5�7c��:# �UR5IShv�NUlURUR5IShv�NUlUR	UR5IShv�NUlUR201R
5IShv�N gN|NVN0N7fr�)rPr��202get_serverr��203get_client�clientr�r�s r@rW�AioHTTPTestCase.setUpAsync*sj����-�-�/�/��� �O�O�D�H�H�5�5��� �O�O�D�K�K�8�8����k�k�&�&�(�(�(�	0�5�8�(�sC�B�B�'B�B�'B�&B�'&B�
B�B�B�B�Bc��># �UR5IShv�N$N7fr�)�
tearDownAsyncr�s r@�
asyncTearDown�AioHTTPTestCase.asyncTearDown1s����'�'�)�)�)�)�s���c��T# �URR5IShv�N gN7fr�)r]r�r�s r@r`�AioHTTPTestCase.tearDownAsync4s����k�k���!�!�!�s�(�&�(r�c��0# �[XRS9$7f)zReturn a TestServer instance.r�)r�rX)rar�s  r@r[�AioHTTPTestCase.get_server7s����#�I�I�.�.���r�c��0# �[XRS9$7f)zReturn a TestClient instance.r�)r�rX)rar�s  r@r\�AioHTTPTestCase.get_client;s����&�y�y�1�1�rg)r�r]rXr�r�)r�r�r�r�rIr&rPrOrXrWrar`r�r[r�r*r\r�rqrBr@rMrMse����{��J��J�'�)�*�"�/�K�/�J�/�2�z�2�j��+�AU�6V�2rBrM�func�argsr[c�:�[R"S[SS9 U$)zk204A decorator dedicated to use with asynchronous AioHTTPTestCase test methods.205 206In 3.8+, this does nothing.207zBDecorator `@unittest_run_loop` is no longer needed in aiohttp 3.8+rk)�208stacklevel)�warnings�warn�DeprecationWarning)rjrkr[s   r@�unittest_run_looprq@s ��
�M�M�L����209�KrBF�loop_factory�fastc#�<# �[U5nUv� [X!S9 g7f)zrA contextmanager that creates an event_loop, for test purposes.210 211Handles the creation and cleanup of a test loop.212)rsN)�setup_test_loop�teardown_test_loop)rrrsrXs   r@�loop_contextrwQs����<�(�D�213�J��t�'�s�c�@�U"5n[R"U5 U$)z�Create and return an asyncio.BaseEventLoop instance.214 215The caller should also call teardown_test_loop,216once they are done with the loop.217)r��set_event_loop)rrrXs  r@ruru^s���>�D����4� ��KrBrXc��UR5nU(d;URUR5 UR5 UR	5 U(d[218R"5 [R"S5 g)z>Teardown and cleanup an event_loop created by setup_test_loop.N)	�	is_closed�	call_soon�stop�run_foreverr��gc�collectr�ry)rXrsr�s   r@rvrvksP��
�^�^�
�F�����t�y�y�!������219�220���221�222�223�����4� rBc��S[S[S[4SjnS[S[S[SS4Sjn[R"[S9n0UlXlXlSUl[U5Ul224URR5 U$)	Nr��keyr=c� �URU$r���225__app_dict)r�r�s  r@�get_dict�"_create_app_mock.<locals>.get_dictzs���~�~�c�"�"rB�valuec� �X RU'gr�r�)r�r�r�s   r@�set_dict�"_create_app_mock.<locals>.set_dict}s��#���s�rB)�specF)rr�r�	MagicMockr&r��__getitem__�__setitem__�_debugr�on_response_prepare�freeze)r�r�r�s   r@�_create_app_mockr�ys���#�c�#��#��#�$�c�$��$�C�$�D�$��.�.�k�226*�C��C�N��O��O��C�J�$�S�k�C�����"�"�$��JrB�227sslcontextc�^�[R"5nS[S[[4U4SjjnX!R228lU$)Nr�r=c�>�US:XaT$g)Nr�rq)r�r�s �r@�get_extra_info�)_create_transport.<locals>.get_extra_info�s����,����rB)r�Mockr�rr0r��side_effect)r��	transportr�s`  r@�_create_transportr��s:����	�	��I��C��H�Z�$8��,:���(��rBi.)�229match_inforx�closingr��writer�protocolr��payloadr��client_max_sizerXrr��headersr�rxr�r�r�r�r�r�r�c��[R"5nU
SLa[R"5n
U[SS5:aSnU(a5[[U55n[SUR555nO[[55nSnSUR[RS5R5;n[!UUUUUUSS	U[#U55230nUc231[%5nU	[&La[)U5n	U[&La�[R"5nS232UlS233UlSUlX�l[R2"U	R5S5S
9[7U5l[R2"US
9[7U5lU[&La[[R"5n[=S5Ul[=S5Ul [=S5Ul![=S5Ul"X�lX�lXxl#[IUX�X~X�S9n[KU[&La0OU[R"55nURMU5 UUl'U$![a* [R"5n
SU
R234lGNQf=f)z�Creates mocked web.Request testing purposes.235 236Useful in unit tests, when spinning full web server is overkill or237specific conditions and errors are hard to trigger.238.rqrTc3�j# �UH)upURS5URS54v� M+ g7f)zutf-8N)�encode)�.0�k�vs   r@�	<genexpr>�&make_mocked_request.<locals>.<genexpr>�s,���239�?N�t�q�Q�X�X�g�
����� 1�2��s�13�chunkedrVNFi���peername)�return_value)r�)(rr�r�rVrS�
create_futurer�r!rr�tuple�itemsrr�TRANSFER_ENCODING�lowerr"rr�r r��max_field_size�max_line_length�max_headersr��PropertyMockr�r�r�rm�make_mocked_coro�
write_headers�write�	write_eof�drainr�r*r.�add_app�_match_info)rr�r�r�rxr�r�r�r�r�r�r�r�rX�task�raw_hdrsr��message�reqs                   r@�make_mocked_requestr��s1��,�9�9�;�D��s�{�240	1��+�+�-�D�241��Q��"�"����"�;�w�#7�8���242�?F�}�}��243�244��#�;�=�1�����7�;�;�t�'=�'=�r�B�H�H�J�J�G���������
���D�	��G��{�� ���H��%�j�1�	��8���9�9�;��"&���#'�� �"���&��"&�"3�"3�"�1�1�*�=�#245��X���&*�%6�%6�J�%O��X��"�
��������/��5���'��-���+�D�1���'��-���$��"���O�246���F�$��C�%��H�$��*�d�i�i�k��J����s�� �C�O��J��I�	1��9�9�;�D�.0�D���+�	1�s�I�0J�Jr��raise_exceptionc�d^^�S[S[S[4UU4Sjjn[R"US9$)zCreates a coroutine mock.rkr[r=c��v># �T[LaTe[R"T5(dT$TIShv�N gN7fr�)r �inspect�isawaitable)rkr[r�r�s  ��r@�	mock_coro�#make_mocked_coro.<locals>.mock_coros4�����(�*�!�!��"�"�<�0�0������s�.9�7�9)�wraps)rrr�)r�r�r�s`` r@r�r��s3���247�s��c��c����9�9�9�%�%rB)Fr�)mrIr��248contextlibrr�rv�osrErJrn�abcrr�typesr�typingrrrr	r249rrr
rrr�unittestrr�	aiosignalr�	multidictrr�yarlrr��aiohttp.clientrrrrVrrr�
client_reqrepr�	client_wsr�helpersr ror!r"�streamsr#r$�typedefsr%�webr&r'r(r)r*r+r,r-r.�web_protocolr/rer0rKr4r5r6r7�name�platformrGrOr�r�rArPr?rRrTr�r�r�rMrqr��
_LOOP_FACTORY�contextmanager�new_event_loopr�rwrurvr�r�r�r�r�r�rqrBr@�<module>r�s��� ���	���	�
�250��#������3��3�����"�"�)�.��0�0��251�252�253�*����J����w��=�����w����D��-�{�D�A���:�[�1�����7�"�?�s�|�|�x�'?�
�/5�n�n�,�254
�,��+�+�,��]�]�,�255
�256
�257
��258
�"(�"6�"6�259
��]�]�260
�-�S�-�A�S�A�H-��-�"8�N�8�$s���#3�3�4�s�l62�-�62�r�C����s��s����W�6�6�6�7�
����")�"8�"8�u�	(��	(�@D�	(�
�g�'�'�(�	(��	(�#*�"8�"8�261��262����263�!�W�6�6�!�d�!�t�!��$�.�.��$264�(�:�"6�265�$�)�)�266� �b�267�&�q�!�,������)�'+�"��b��b�268
�b��b�269�b��
b��b�270
�b�
�b��b��b��b���$�b��b��b� 
�!b�L!��&��&�36�&��&rB
codekingpro/portable-devtools · Team Ai