Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/test/__pycache__/test_asyncgen.cpython-38.opt-2.pyc
U

>��g�}�@s�ddlZddlZddlZddlmZed�ZGdd�de�Zejdd�dd	��Z	d
d�Z
dd
�ZGdd�dej�Z
Gdd�dej�ZGdd�dej�Zedkr�e��dS)�N)�
import_module�asyncioc@seZdZdS)�AwaitExceptionN��__name__�
__module__�__qualname__�r	r	�1/opt/cppython/lib/python3.8/test/test_asyncgen.pyr	srF��throwccs|rdVndVdS)Nr��resultr	rr	r	r
�	awaitable
src
Csjd}z"|rd}|�t�}n
|�d�}Wn0tk
rV}z|jdWY�Sd}~XYnX|dkrd}qdS)NFrrT)rr�send�
StopIteration�args)�coro�exc�fut�exr	r	r
�run_until_completes rcs�fdd�}t|��S)Nc�s&g}�2z3dHW}|�|�q6|S�N��append)�res�i��genr	r
�iterate&szto_list.<locals>.iterate)r)rrr	rr
�to_list%sr c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�AsyncGenSyntaxTestc	Cs,d}|�td��t|ii�W5QRXdS)NzJasync def foo():
            await abc
            yield from 123
        �yield from.*inside async��assertRaisesRegex�SyntaxError�exec��self�coder	r	r
�test_async_gen_syntax_011sz+AsyncGenSyntaxTest.test_async_gen_syntax_01c	Cs,d}|�td��t|ii�W5QRXdS)Nz4async def foo():
            yield from 123
        r"r#r'r	r	r
�test_async_gen_syntax_02:sz+AsyncGenSyntaxTest.test_async_gen_syntax_02c	Cs,d}|�td��t|ii�W5QRXdS)NzXasync def foo():
            await abc
            yield
            return 123
        �return.*value.*async genr#r'r	r	r
�test_async_gen_syntax_03Bsz+AsyncGenSyntaxTest.test_async_gen_syntax_03c	Cs,d}|�td��t|ii�W5QRXdS)NzBasync def foo():
            yield
            return 123
        r,r#r'r	r	r
�test_async_gen_syntax_04Lsz+AsyncGenSyntaxTest.test_async_gen_syntax_04c	Cs,d}|�td��t|ii�W5QRXdS)NzWasync def foo():
            if 0:
                yield
            return 12
        r,r#r'r	r	r
�test_async_gen_syntax_05Usz+AsyncGenSyntaxTest.test_async_gen_syntax_05N)rrrr*r+r-r.r/r	r	r	r
r!/s
	
	r!c@steZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�AsyncGenTestcCs0dd�}dd�}||�}||�}|�||�|S)Nc
Ssrg}z|�|���Wqtk
r8|�d�YqnYqtk
rj}z|�tt|���W5d}~XYqXq|S)N�STOP)r�__next__r�	Exception�str�type)�grrr	r	r
�sync_iteratecs
&z5AsyncGenTest.compare_generators.<locals>.sync_iteratec
Ss�g}|��}z�z|��Wqtk
rn}z6|jrL|�|jd�WY�q�n|�d�WY�q�W5d}~XYqtk
r��Yqtk
r�}z|�tt|���WY�q�W5d}~XYqXqWqtk
r�|�d�Yq�YqXq|S)NrzEMPTY StopIterationr1)	�	__anext__r2rrr�StopAsyncIterationr3r4r5)r6r�anrr	r	r
�
async_iterateos(

 
z6AsyncGenTest.compare_generators.<locals>.async_iterate)�assertEqual)r(�sync_gen�	async_genr7r;Zsync_gen_resultZasync_gen_resultr	r	r
�compare_generatorsbszAsyncGenTest.compare_generatorscs(�fdd�}��t|��dddg�dS)NcsFt�IdHdV}��|d�t�IdHdVt�IdHdVdS)N�{���)rZassertIs)�a�r(r	r
r�sz5AsyncGenTest.test_async_gen_iteration_01.<locals>.genr@rArB)r<r �r(rr	rDr
�test_async_gen_iteration_01�s	z(AsyncGenTest.test_async_gen_iteration_01c
Cs�dd�}|�}|��}|��}|�|��d�z|��Wn4tk
rn}z|�|jdd�W5d}~XYnX|�d�|��}|�|��d�z|��Wn.tk
r�}z|�|j�W5d}~XYnX|�d�dS)NcSs"t�IdHdVt�IdHdS�Nr@�rr	r	r	r
r�sz5AsyncGenTest.test_async_gen_iteration_02.<locals>.genr
rr@�StopIteration was not raisedz!StopAsyncIteration was not raised)	�	__aiter__r8r<r2rr�failr9�assertFalse�r(rr6Zair:rr	r	r
�test_async_gen_iteration_02�s"$
z(AsyncGenTest.test_async_gen_iteration_02c	Cs,dd�}|�t��t|��W5QRXdS)NcSs,t�IdHdVtdd�IdHdVdS)Nr@TrrArHr	r	r	r
r�sz5AsyncGenTest.test_async_gen_exception_03.<locals>.gen)�assertRaisesrr rEr	r	r
�test_async_gen_exception_03�sz(AsyncGenTest.test_async_gen_exception_03c
Cs�dd�}|�}|��}|��}|�|��d�z|��Wn4tk
rn}z|�|jdd�W5d}~XYnX|�d�|�t��|����W5QRXdS)NcSst�IdHdVdddS)Nr@�rrHr	r	r	r
r�sz5AsyncGenTest.test_async_gen_exception_04.<locals>.genr
rr@rI)	rJr8r<r2rrrKrO�ZeroDivisionErrorrMr	r	r
�test_async_gen_exception_04�s$
z(AsyncGenTest.test_async_gen_exception_04c	Cs.dd�}|�td��t|��W5QRXdS)NcSsdVt�dSrG)r9r	r	r	r
r�sz5AsyncGenTest.test_async_gen_exception_05.<locals>.genz#async generator.*StopAsyncIteration�r$�RuntimeErrorr rEr	r	r
�test_async_gen_exception_05�s
�z(AsyncGenTest.test_async_gen_exception_05c	Cs.dd�}|�td��t|��W5QRXdS)NcSsdVt�dSrG)rr	r	r	r
r�sz5AsyncGenTest.test_async_gen_exception_06.<locals>.genzasync generator.*StopIterationrTrEr	r	r
�test_async_gen_exception_06�s
�z(AsyncGenTest.test_async_gen_exception_06cCs$dd�}dd�}|�|�|��dS)Ncss,zdVddW5dVdVXdVdS�N��rQr�dr	r	r	r	r
r=�sz:AsyncGenTest.test_async_gen_exception_07.<locals>.sync_gencSs,zdVddW5dVdVXdVdSrXr	r	r	r	r
r>�sz;AsyncGenTest.test_async_gen_exception_07.<locals>.async_gen�r?�r(r=r>r	r	r
�test_async_gen_exception_07�s

z(AsyncGenTest.test_async_gen_exception_07cCs$dd�}dd�}|�|�|��dS)Ncss,z
dVW5dVdddVXdVdS�NrYrQrrZr[r	r	r	r	r
r=�s
z:AsyncGenTest.test_async_gen_exception_08.<locals>.sync_gencSsDzdVt�IdHW5t�IdHdVdddVXdVdSr_rHr	r	r	r
r>	sz;AsyncGenTest.test_async_gen_exception_08.<locals>.async_genr\r]r	r	r
�test_async_gen_exception_08�s
z(AsyncGenTest.test_async_gen_exception_08cCs$dd�}dd�}|�|�|��dS)Ncss,zdVddW5dVdVXdVdSrXr	r	r	r	r
r=sz:AsyncGenTest.test_async_gen_exception_09.<locals>.sync_gencSsDzt�IdHdVddW5dVt�IdHdVXdVdSrXrHr	r	r	r
r>"sz;AsyncGenTest.test_async_gen_exception_09.<locals>.async_genr\r]r	r	r
�test_async_gen_exception_09s
z(AsyncGenTest.test_async_gen_exception_09c	Cs4dd�}|�td��|����d�W5QRXdS)NcSs
dVdSrGr	r	r	r	r
r1sz5AsyncGenTest.test_async_gen_exception_10.<locals>.genz!non-None value .* async generatorr[)r$�	TypeErrorr8rrEr	r	r
�test_async_gen_exception_100s
�z(AsyncGenTest.test_async_gen_exception_10cs<dd���fdd�}dd���fdd�}|�|�|��dS)	NcssdVdVdS�N�
�r	r	r	r	r
r=8sz:AsyncGenTest.test_async_gen_exception_11.<locals>.sync_genc3sLdV��}|�d�z|�t��Wntk
r@dVYnXdVdS�NrQrYrZ)rr�
GeneratorExit)�sg)r=r	r
�sync_gen_wrapper<s
zBAsyncGenTest.test_async_gen_exception_11.<locals>.sync_gen_wrappercSsdVdVdSrdr	r	r	r	r
r>Fsz;AsyncGenTest.test_async_gen_exception_11.<locals>.async_gencsXdV��}|�d�IdHz|�t��IdHWntk
rLdVYnXdVdSrg)�asend�athrowrh)Zasg)r>r	r
�async_gen_wrapperJszCAsyncGenTest.test_async_gen_exception_11.<locals>.async_gen_wrapperr\)r(rjrmr	)r>r=r
�test_async_gen_exception_117s


z(AsyncGenTest.test_async_gen_exception_11cCs�dd�}|�}|�|jd�d|_|�|jd�|�d|j�d|_|�|jd�|�|j�|�|jtj	�|�
|j�|�|jtj
�|�t�|����dS)NcSs
dVdSrGr	r	r	r	r
rWsz/AsyncGenTest.test_async_gen_api_01.<locals>.genrZ123z.gen)r<rZassertInrZassertIsNone�ag_await�assertIsInstance�ag_frame�types�	FrameTyperL�
ag_running�ag_code�CodeTypeZ
assertTrue�inspectZisawaitable�aclose)r(rr6r	r	r
�test_async_gen_api_01Vsz"AsyncGenTest.test_async_gen_api_01N)rrrr?rFrNrPrSrVrWr^r`rarcrnryr	r	r	r
r0`s+
		r0c@s$eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Z d=d>�Z!d?d@�Z"dAdB�Z#dCdD�Z$dEdF�Z%dGS)H�AsyncGenAsyncioTestcCst��|_t�d�dSr)rZnew_event_loop�loopZset_event_looprDr	r	r
�setUpns
zAsyncGenAsyncioTest.setUpcCs|j��d|_t�d�dSr)r{�closerZset_event_loop_policyrDr	r	r
�tearDownrs
zAsyncGenAsyncioTest.tearDownc�s&g}|2z3dHW}|�|�q6|Srr)r(rrrr	r	r
r wszAsyncGenAsyncioTest.to_listcCs0dd�}|j�|�|���}|�|ddg�dS)NcSs0dVt�d�IdHdVt�d�IdHdS)NrQ�{�G�z�?rYrZ�r�sleepr	r	r	r
r~sz:AsyncGenAsyncioTest.test_async_gen_asyncio_01.<locals>.genrQrY�r{rr r<)r(rrr	r	r
�test_async_gen_asyncio_01}sz-AsyncGenAsyncioTest.test_async_gen_asyncio_01c	Cs6dd�}|�t��|j�|�|���W5QRXdS)NcSs.dVt�d�IdHdVdddVdS)NrQrrYrrZr�r	r	r	r
r�s
z:AsyncGenAsyncioTest.test_async_gen_asyncio_02.<locals>.gen)rOrRr{rr rEr	r	r
�test_async_gen_asyncio_02�sz-AsyncGenAsyncioTest.test_async_gen_asyncio_02cCs:|j}Gdd�d�}|�|�|���}|�|ddg�dS)Nc@seZdZdd�ZdS)z:AsyncGenAsyncioTest.test_async_gen_asyncio_03.<locals>.GencSs dVt�d�IdHdVdS)NrQrrYr�rDr	r	r
rJ�szDAsyncGenAsyncioTest.test_async_gen_asyncio_03.<locals>.Gen.__aiter__N)rrrrJr	r	r	r
�Gen�sr�rQrYr�)r(r{r�rr	r	r
�test_async_gen_asyncio_03�sz-AsyncGenAsyncioTest.test_async_gen_asyncio_03csDdd����fdd�}��fdd�}�j�|���j�|��dS)NcSs\dVt�d�IdHzdVdVWntk
r@dVYnXt�d�IdHdVdS)NrQrrYrZ���)rr�rRr	r	r	r
�foo�s
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_04.<locals>.fooc	�s�����}��|��IdHd���|��IdHd���|��IdHd���|��IdHd���t��|��IdHW5QRX��t��|��IdHW5QRXdS)NrQrYrZr�)rJr<r8rOr9��it�r�r(r	r
�run1�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_anext_04.<locals>.run1c
�s�����}��|��IdHd���|��IdHd�z|���t�Wn4tk
r|}z��|jdd�W5d}~XYnX��d���|��IdHd���t	��|��IdHW5QRXdS)NrQrYrr�rIr�)
rJr<r8rrRrrrKrOr9�r�rr�r	r
�run2�s
$
zAAsyncGenAsyncioTest.test_async_gen_asyncio_anext_04.<locals>.run2�r{r)r(r�r�r	r�r
�test_async_gen_asyncio_anext_04�s
z3AsyncGenAsyncioTest.test_async_gen_asyncio_anext_04cs(dd����fdd�}�j�|��dS)NcSsdV}|V}|dVdS�NrQr[r	��vr	r	r
r��sz@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_05.<locals>.fooc
�s(����}z|���d�Wn4tk
rP}z��|jdd�W5d}~XYnX��d�z|���d�Wn4tk
r�}z��|jdd�W5d}~XYnX��d�z|���d�Wn4tk
r�}z��|jdd�W5d}~XYnX��d���t��|��IdHW5QRXdS)NrrQrIre�i�)	rJr8rrr<rrKrOr9r�r�r	r
�run�s$
$
$
$
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_05.<locals>.runr��r(r�r	r�r
�test_async_gen_asyncio_anext_05�sz3AsyncGenAsyncioTest.test_async_gen_asyncio_anext_05c	svd�dd�}|�}|�d���t��|�d�W5QRX�fdd�����fdd�}�j�|�����d�dS)	Nrcssz
dVWnYnXdSrr	r	r	r	r
r��s
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06.<locals>.foocs z
dVWnYnXd�dS�NrQr	r	��DONEr	r
r�s

z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06.<locals>.genc	�sH��}|�d�IdH��t��|�d�IdHW5QRX�d7�dS�Nre)rkrOr9�r6�r�rr(r	r
r�s
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06.<locals>.run�)rrOrr{rr<�r(r�r6r�r	r�r
�test_async_gen_asyncio_anext_06�s
z3AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06cs(dd����fdd�}�j�|��dS)NcSs*z
dVWntk
r$dVYnXdS)N�rQ�rY�rRr	r	r	r
r�s
zCAsyncGenAsyncioTest.test_async_gen_asyncio_anext_tuple.<locals>.fooc	�s�����}��|��IdHd���t��}|���t�W5QRX��|jjdd���t	��|��IdHW5QRXdS)Nr�rr�)
rJr<r8rOrrrR�	exceptionrr9)r��cmr�r	r
r�s
zCAsyncGenAsyncioTest.test_async_gen_asyncio_anext_tuple.<locals>.runr�r�r	r�r
�"test_async_gen_asyncio_anext_tuples
z6AsyncGenAsyncioTest.test_async_gen_asyncio_anext_tuplecs(dd����fdd�}�j�|��dS)NcSs2ztd�VWntk
r,td�VYnXdS)NrQrZ)rrRr	r	r	r
r�$szKAsyncGenAsyncioTest.test_async_gen_asyncio_anext_stopiteration.<locals>.fooc	�s�����}|��IdH}��|t���|jd���t��}|���t�W5QRX|j	j
d}��|t���|jd���t��|��IdHW5QRXdS)NrQrrZ)rJr8rprr<�valuerOrrRr�rr9)r�r�r�r�r	r
r�*s
zKAsyncGenAsyncioTest.test_async_gen_asyncio_anext_stopiteration.<locals>.runr�r�r	r�r
�*test_async_gen_asyncio_anext_stopiteration#sz>AsyncGenAsyncioTest.test_async_gen_asyncio_anext_stopiterationc	s>dd���fdd�}|�td��|j�|��W5QRXdS)Nc	Ss0zdVddW5t�d�IdHdVXdS)Nrr�rQrr�r	r	r	r
r�;s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_06.<locals>.fooc�s.��}|��}|��IdH|��IdHdSr�rJr8rx�rr��r�r	r
r�CszAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_06.<locals>.runz%async generator ignored GeneratorExit)r$rUr{rr�r	r�r
� test_async_gen_asyncio_aclose_06:s�z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_06cs:d��fdd���fdd�}|j�|��|��d�dS)Nrc	sJzdVddW5t�d�IdHt�d�IdH�d7�X�d7�dS)NrrQrr�r�r	r�r	r
r�Qs
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_07.<locals>.fooc�s.��}|��}|��IdH|��IdHdSrr�r�r�r	r
r�\szAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_07.<locals>.runrQ�r{rr<r�r	)r�r�r
� test_async_gen_asyncio_aclose_07Ns
z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_07csfd�tj�jd����fdd����fdd�}�j�|�����d�����j�t�d��dS)	Nr�r{c	sZz"dV�IdH�d7�dVW5t�d�IdHt�d�IdH�d7�X�d7�dS�NrrQr�rYr�r	)r�rr	r
r�js


zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_08.<locals>.fooc�s6��}|��}��|��IdHd�|��IdHdSr�)rJr<r8rxr�r�r	r
r�wszAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_08.<locals>.runrQr)r�Futurer{rr<�cancelr�r�r	)r�r�rr(r
� test_async_gen_asyncio_aclose_08es
z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_08cs:d��fdd���fdd�}|j�|��|��d�dS)Nrc	s8zdVqW5t�d�IdHt�d�IdHd�XdS)NrrQr�r	r�r	r
r�s
zDAsyncGenAsyncioTest.test_async_gen_asyncio_gc_aclose_09.<locals>.genc�s8��}|��IdH|��IdH~t�d�IdHdS)N皙�����?)r8rr�r�rr	r
r��s
zDAsyncGenAsyncioTest.test_async_gen_asyncio_gc_aclose_09.<locals>.runrQr�r�r	�r�rr
�#test_async_gen_asyncio_gc_aclose_09�s

z7AsyncGenAsyncioTest.test_async_gen_asyncio_gc_aclose_09cs\d�dd�}|�}|�d�|���fdd����fdd�}|j�|��|��d�dS)	Nrcssz
dVWnYnXdSrr	r	r	r	r
r��s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10.<locals>.foocs z
dVWnYnXd�dSr�r	r	r�r	r
r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10.<locals>.genc�s0��}|�d�IdH|��IdH�d7�dSr�)rkrxr�r�r	r
r��szAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10.<locals>.runr�)rr}r{rr<r�r	r�r
� test_async_gen_asyncio_aclose_10�s
z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10c	svd�dd�}|�}|�d���td��|��W5QRX�fdd�����fdd�}�j�|�����d	�dS)
Nrcss"z
dVWnYnXdVdSrr	r	r	r	r
r��s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11.<locals>.foo�ignored GeneratorExitcs*z
dVWnYnXdV�d7�dSr�r	r	r�r	r
r�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11.<locals>.genc	�sH��}|�d�IdH��td��|��IdHW5QRX�d7�dS)Nr�re)rkr$rUrxr�r�r	r
r��s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11.<locals>.runre)rr$rUr}r{rr<r�r	r�r
� test_async_gen_asyncio_aclose_11�s
	z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11csDd�dd����fdd���fdd�}|j�|��|��d�dS)	Nrc�st�d�IdHdddS)NrrQrr�r	r	r	r
�target�szDAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12.<locals>.targetcsFt����}z
dVW5z|IdHWntk
r>d�YnXXdSr�)r�create_taskrR)�task)r�r�r	r
r��s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12.<locals>.fooc�s.��}|��}|��IdH|��IdHdSrr�r�r�r	r
r��szAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12.<locals>.runrQr�r�r	)r�r�r�r
� test_async_gen_asyncio_aclose_12�sz4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12csvd�dd�}|�}|�d�}��|d�|�d�}��|d��fdd����fd	d
�}�j�|�����d�dS)NrcssdV}|dVdS�NrQrYr	r�r	r	r
�sgenszAAsyncGenAsyncioTest.test_async_gen_asyncio_asend_01.<locals>.sgenrQr[��c	stzHt�d�IdHdV}t�d�IdH|dVt�d�IdHW�dSt�d�IdHt�d�IdHd�XdS�NrrQrYr�r�r�r	r
r
s
z@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_01.<locals>.genc	�sh��}|�d�IdH}��|d�|�d�IdH}��|d���t��|�d�IdHW5QRXdS)NrQr[r�)rkr<rOr9�r6r��rr(r	r
r�sz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_01.<locals>.run)rr<r{r�r(r�rir�r�r	r�r
�test_async_gen_asyncio_asend_01�s

z3AsyncGenAsyncioTest.test_async_gen_asyncio_asend_01c	s\d�dd����fdd����fdd�}��t���j�|��W5QRX���d�dS)	Nrc�st�|�IdHdddS)NrQrr���delayr	r	r
�
sleep_n_crash*szJAsyncGenAsyncioTest.test_async_gen_asyncio_asend_02.<locals>.sleep_n_crashc	sfz:t�d�IdHdV}�d�IdH�d7�|dVW5t�d�IdHt�d�IdHd�XdSr�r�r��r�r�r	r
r.sz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_02.<locals>.genc�s6��}|�d�IdH}��|d�|�d�IdHdSr��rkr<r�r�r	r
r�;sz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_02.<locals>.runrQ)rOrRr{rr<r�r	�r�rr(r�r
�test_async_gen_asyncio_asend_02's
z3AsyncGenAsyncioTest.test_async_gen_asyncio_asend_02c	sbd��fdd����fdd����fdd�}��tj���j�|��W5QRX���d�dS)	Nrc�s:tjt�|��jd���j�|d�fdd���IdHS)Nr�rYcs���Sr�r�r	�rr	r
�<lambda>M�z\AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.sleep_n_crash.<locals>.<lambda>�rZ
ensure_futurer�r{Z
call_laterr�rDr�r
r�Js
�zJAsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.sleep_n_crashc	sfz:t�d�IdHdV}�d�IdH�d7�|dVW5t�d�IdHt�d�IdHd�XdSr�r�r�r�r	r
rPsz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.genc�s6��}|�d�IdH}��|d�|�d�IdHdSr�r�r�r�r	r
r�]sz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.runrQ)rOr�CancelledErrorr{rr<r�r	r�r
�test_async_gen_asyncio_asend_03Gs
z3AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03c	s�d�Gdd�dt���fdd�}|�}|�d�}��|d�|���}��|d���t��|�d�W5QRX��fdd	�����fd
d�}�j�|�����d�dS)Nrc@seZdZdS)zCAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.FooErNrr	r	r	r
�FooErlsr�c3s2z
dV}Wn�k
r"d}YnX|dVdS)NrQr�rYr	r�)r�r	r
r�ps


zBAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.sgenrQ��c	s�zbt�d�IdHz
dV}Wn(�k
rDd}t�d�IdHYnX|dVt�d�IdHW5t�d�IdHt�d�IdHd�XdSr�r�r�)r�r�r	r
r~s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.genc	�sh��}|�d�IdH}��|d�|���IdH}��|d���t��|�d�IdHW5QRXdS)NrQr�)rkr<rlrOr9r�)r�rr(r	r
r��szAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.run)r3rr<rrOrr{rr�r	�r�r�rr(r
� test_async_gen_asyncio_athrow_01is

z4AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01c	sxd�Gdd�dt���fdd�����fdd������fdd	�}��tj���j�|��W5QRX���d
�dS)Nrc@seZdZdS)zCAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.FooErNrr	r	r	r
r��sr�c�s:tjt�|��jd���j�|d�fdd���IdHS)Nr�rYcs���Srr�r	r�r	r
r��r�z]AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.sleep_n_crash.<locals>.<lambda>r�r�rDr�r
r��s
�zKAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.sleep_n_crashc	s�z\t�d�IdHz
dV}Wn"�k
r>�d�IdHYnX|dVt�d�IdHW5t�d�IdHt�d�IdHd�XdSr�r�r�)r�r�r�r	r
r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.genc�sj��}|�d�IdH}��|d�z|���IdHWn$tjk
rZ���d��YnX��d�dS)NrQzCancelledError was not raised)rkr<rlrr�rKr�r�r	r
r��szAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.runrQ)r3rOrr�r{rr<r�r	)r�r�rr(r�r
� test_async_gen_asyncio_athrow_02�sz4AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02c	svd�dd�}|�}|�d���t��|�t�W5QRX�fdd�����fdd�}�j�|�����d�dS)	Nrcssz
dVWnYnXdSrr	r	r	r	r
r��s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03.<locals>.foocs z
dVWnYnXd�dSr�r	r	r�r	r
r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03.<locals>.genc	�sH��}|�d�IdH��t��|�t�IdHW5QRX�d7�dSr�)rkrOr9rl�
ValueErrorr�r�r	r
r��s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03.<locals>.runr�)rrOrrr�r{rr<r�r	r�r
� test_async_gen_asyncio_athrow_03�s
z4AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03cs(dd����fdd�}�j�|��dS)NcSs*z
dVWntk
r$dVYnXdS�NrQr�r�r	r	r	r
r�s
zDAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_tuple.<locals>.genc	�sh��}|�d�IdH}��|d�|�t�IdH}��|d���t��|�d�IdHW5QRXdSr�)rkr<rlrRrOr9r�r�r	r
r��szDAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_tuple.<locals>.runr�r�r	r�r
�#test_async_gen_asyncio_athrow_tuple�s	z7AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_tuplecs(dd����fdd�}�j�|��dS)NcSs.z
dVWntk
r(td�VYnXdSr�)rRrr	r	r	r
rs
zLAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_stopiteration.<locals>.genc	�sv��}|�d�IdH}��|d�|�t�IdH}��|t���|jd���t��|�d�IdHW5QRXdSr�)	rkr<rlrRrprr�rOr9r�r�r	r
r�szLAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_stopiteration.<locals>.runr�r�r	r�r
�+test_async_gen_asyncio_athrow_stopiterations
z?AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_stopiterationc	s�d��fdd���fdd�}|j�|��}|j�|��}|j�t�d��|��|��|�tj��|j�|�W5QRX|�tj��|j�|�W5QRX|j�|j���|�	�d�dS)Nrc	s:zt�|�IdHdVW5t�d�IdH�d7�XdS)NrrQr�)�timeout)�	finalizedr	r
�waiters

zFAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_01.<locals>.waiterc�s�d�2z3dHW}q6dSr�r	)�_)r�r	r
�wait szDAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_01.<locals>.waitr�rY)
r{r�rrr�r�rOr�Zshutdown_asyncgensr<)r(r��t1�t2r	)r�r�r
�"test_async_gen_asyncio_shutdown_01s	z6AsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_01csLdd���fdd���fdd�}|j�|��}|�|dd�td	�D��dS)
NcSs(t|�D]}t�d�IdH|VqdS�Nr)�rangerr�)�nrr	r	r
�arange7sz@AsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.arangecsdd��|�2�S)NcSs |z3dHW}|dVq6dS�NrYr	��.0rr	r	r
�	<genexpr>>szXAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.make_arange.<locals>.<genexpr>r	�r�)r�r	r
�make_arange<szEAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.make_arangec�sdd��d�2�IdHS)Nc�sg|z3dHW}|�q6Srr	r�r	r	r
�
<listcomp>AszQAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.run.<locals>.<listcomp>rer	r	�r�r	r
r�@sz=AsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.runcSsg|]}|d�qSr�r	r�r	r	r
r�DszDAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.<listcomp>re�r{rr<r��r(r�rr	)r�r�r
�test_async_gen_expression_016s
z0AsyncGenAsyncioTest.test_async_gen_expression_01csNdd���fdd���fdd�}|j�|��}|�|dd�td	d
�D��dS)Nc�st�d�IdH|Sr�r�r�r	r	r
�wrapGsz>AsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.wrapcs�fdd�t|�D�S)Ncs$|]}�|�IdHr|dVqdSr�r	r��r�r	r
r�MszXAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.make_arange.<locals>.<genexpr>)r�r�r�r	r
r�KszEAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.make_arangec�sdd��d�2�IdHS)Nc�sg|z3dHW}|�q6Srr	r�r	r	r
r�PszQAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.run.<locals>.<listcomp>rer	r	r�r	r
r�Osz=AsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.runcSsg|]}|d�qSr�r	r�r	r	r
r�SszDAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.<listcomp>rQrer�r�r	)r�r�r
�test_async_gen_expression_02Fs
z0AsyncGenAsyncioTest.test_async_gen_expression_02csBg��fdd��dd����fdd�}t�|��|�g��dS)Ncs��|�dSrr)r{�context)�messagesr	r
�exception_handlerYsz]AsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellable.<locals>.exception_handlercSsdVdVdSr�r	r	r	r	r
r;\szYAsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellable.<locals>.async_iteratec�s0t��}|�����2z3dHW}q,q6dSr)rZget_running_loopZset_exception_handler)r{r)r;r�r	r
�main`s
zPAsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellable.<locals>.main)rr�r<)r(r�r	)r;r�r�r
�.test_asyncgen_nonstarted_hooks_are_cancellableUszBAsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellablecs(dd����fdd�}�j�|��dS)NcSsdVdVdSr�r	r	r	r	r
r;lszUAsyncGenAsyncioTest.test_async_gen_await_same_anext_coro_twice.<locals>.async_iteratec	�sL��}|��}|IdH��td��|IdHW5QRX|��IdHdS)Nz4cannot reuse already awaited __anext__\(\)/asend\(\))r8r$rUrx�r�Znxt�r;r(r	r
r�ps
�zKAsyncGenAsyncioTest.test_async_gen_await_same_anext_coro_twice.<locals>.runr�r�r	r�r
�*test_async_gen_await_same_anext_coro_twiceksz>AsyncGenAsyncioTest.test_async_gen_await_same_anext_coro_twicecs(dd����fdd�}�j�|��dS)NcSsdVdVdSr�r	r	r	r	r
r;szVAsyncGenAsyncioTest.test_async_gen_await_same_aclose_coro_twice.<locals>.async_iteratec	�s>��}|��}|IdH��td��|IdHW5QRXdS)Nz2cannot reuse already awaited aclose\(\)/athrow\(\))rxr$rUr�r�r	r
r��s
�zLAsyncGenAsyncioTest.test_async_gen_await_same_aclose_coro_twice.<locals>.runr�r�r	r�r
�+test_async_gen_await_same_aclose_coro_twice~s
z?AsyncGenAsyncioTest.test_async_gen_await_same_aclose_coro_twicecs&dd���fdd�}|j�|��dS)NcSsdVdVdSr�r	r	r	r	r
r;�sz[AsyncGenAsyncioTest.test_async_gen_aclose_twice_with_different_coros.<locals>.async_iteratec�s&��}|��IdH|��IdHdSr�rxr��r;r	r
r��szQAsyncGenAsyncioTest.test_async_gen_aclose_twice_with_different_coros.<locals>.runr�r�r	rr
�0test_async_gen_aclose_twice_with_different_coros�szDAsyncGenAsyncioTest.test_async_gen_aclose_twice_with_different_coroscs&dd���fdd�}|j�|��dS)NcSsdVdVdSr�r	r	r	r	r
r;�szQAsyncGenAsyncioTest.test_async_gen_aclose_after_exhaustion.<locals>.async_iteratec�s,��}|2z3dHW}q
6|��IdHdSrr)r�r�rr	r
r��szGAsyncGenAsyncioTest.test_async_gen_aclose_after_exhaustion.<locals>.runr�r�r	rr
�&test_async_gen_aclose_after_exhaustion�sz:AsyncGenAsyncioTest.test_async_gen_aclose_after_exhaustioncs&dd���fdd�}|j�|��dS)NcSst�VdSr)�objectr	r	r	r
�async_generator�sz\AsyncGenAsyncioTest.test_async_gen_aclose_compatible_with_get_stack.<locals>.async_generatorc�s2��}t�|���t��}|D]}|��q dSr)rr�rxZ	all_tasksZ	get_stack)ZagZtasksr��rr	r
r��s
zPAsyncGenAsyncioTest.test_async_gen_aclose_compatible_with_get_stack.<locals>.runr�r�r	rr
�/test_async_gen_aclose_compatible_with_get_stack�szCAsyncGenAsyncioTest.test_async_gen_aclose_compatible_with_get_stackN)&rrrr|r~r r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrr	r	r	r	r
rzlsF*##!%* "5.#"
rz�__main__)rwrrZunittestZtest.supportrrr3r�	coroutinerrr ZTestCaser!r0rzrr�r	r	r	r
�<module>s,
1S

F1le Man4ger