HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/test/__pycache__/test_asyncgen.cpython-37.opt-1.pyc
B

��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__�rr�./usr/local/lib/python3.7/test/test_asyncgen.pyr	srF)�throwccs|rdVndVdS)N)r
)�resultr)r
rrr	�	awaitable
src
Csfd}x\y"|rd}|�t�}n
|�d�}Wn(tk
rP}z
|jdSd}~XYnX|dkrd}qWdS)NFr)r
T)r
r�send�
StopIteration�args)�coro�exc�fut�exrrr	�run_until_completesrcs�fdd�}t|��S)Nc	�s>g}x4�2y3dH}Wn
tk
s.X|�|�q
YW|S)N)�StopAsyncIteration�append)�res�i)�genrr	�iterate&szto_list.<locals>.iterate)r)rrr)rr	�to_list%src@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�AsyncGenSyntaxTestc	Cs,d}|�td��t|ii�WdQRXdS)NzJasync def foo():
            await abc
            yield from 123
        zyield from.*inside async)�assertRaisesRegex�SyntaxError�exec)�self�coderrr	�test_async_gen_syntax_011sz+AsyncGenSyntaxTest.test_async_gen_syntax_01c	Cs,d}|�td��t|ii�WdQRXdS)Nz4async def foo():
            yield from 123
        zyield from.*inside async)rrr)r r!rrr	�test_async_gen_syntax_02:sz+AsyncGenSyntaxTest.test_async_gen_syntax_02c	Cs,d}|�td��t|ii�WdQRXdS)NzXasync def foo():
            await abc
            yield
            return 123
        zreturn.*value.*async gen)rrr)r r!rrr	�test_async_gen_syntax_03Bsz+AsyncGenSyntaxTest.test_async_gen_syntax_03c	Cs,d}|�td��t|ii�WdQRXdS)NzBasync def foo():
            yield
            return 123
        zreturn.*value.*async gen)rrr)r r!rrr	�test_async_gen_syntax_04Lsz+AsyncGenSyntaxTest.test_async_gen_syntax_04c	Cs,d}|�td��t|ii�WdQRXdS)NzWasync def foo():
            if 0:
                yield
            return 12
        zreturn.*value.*async gen)rrr)r r!rrr	�test_async_gen_syntax_05Usz+AsyncGenSyntaxTest.test_async_gen_syntax_05N)rrrr"r#r$r%r&rrrr	r/s
	
	rc@steZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�AsyncGenTestcCs8dd�}dd�}dd�}||�}||�}|�||�|S)Nc
Sstg}xjy|�|���Wqtk
r8|�d�PYqtk
rj}z|�tt|���Wdd}~XYqXqW|S)N�STOP)r�__next__r�	Exception�str�type)�grrrrr	�sync_iteratecs
(z5AsyncGenTest.compare_generators.<locals>.sync_iteratec
Ss�g}x�|��}y�x�y|��Wqtk
rf}z*|jrJ|�|jd�Pn|�d�PWdd}~XYqtk
rz�Yqtk
r�}z|�tt|���PWdd}~XYqXqWWqtk
r�|�d�PYqXqW|S)NrzEMPTY StopIterationr()	�	__anext__r)rrrrr*r+r,)r-rZanrrrr	�
async_iterateos,

z6AsyncGenTest.compare_generators.<locals>.async_iteratec
Ss�g}x�y|����Wqtk
r6|�d�PYqtk
rz}z(|jr^|�|jd�n|�d�PWdd}~XYqtk
r�}z|�tt|���Wdd}~XYqXqW|S)Nr(rzEMPTY StopIteration)	r/r)rrrrr*r+r,)r-rrrrr	r0�s

()�assertEqual)r �sync_gen�	async_genr.r0Zsync_gen_resultZasync_gen_resultrrr	�compare_generatorsbszAsyncGenTest.compare_generatorscs(�fdd�}��t|��dddg�dS)NcsFt�IdHdV}��|d�t�IdHdVt�IdHdVdS)N�{i�i)rZassertIs)�a)r rr	r�sz5AsyncGenTest.test_async_gen_iteration_01.<locals>.genr5i�i)r1r)r rr)r r	�test_async_gen_iteration_01�s	z(AsyncGenTest.test_async_gen_iteration_01c
Cs�dd�}|�}|��}|�|����d�y|����Wn4tk
rn}z|�|jdd�Wdd}~XYnX|�d�|�|����d�y|����Wn.tk
r�}z|�|j�Wdd}~XYnX|�d�dS)NcSs"t�IdHdVt�IdHdS)Nr5)rrrrr	r�sz5AsyncGenTest.test_async_gen_iteration_02.<locals>.gen)rrr5zStopIteration was not raisedz!StopAsyncIteration was not raised)	�	__aiter__r1r/r)rr�failr�assertFalse)r rr-�airrrr	�test_async_gen_iteration_02�s$
z(AsyncGenTest.test_async_gen_iteration_02c	Cs,dd�}|�t��t|��WdQRXdS)NcSs,t�IdHdVtdd�IdHdVdS)Nr5T)r
i�)rrrrr	r�sz5AsyncGenTest.test_async_gen_exception_03.<locals>.gen)�assertRaisesrr)r rrrr	�test_async_gen_exception_03�sz(AsyncGenTest.test_async_gen_exception_03c
Cs�dd�}|�}|��}|�|����d�y|����Wn4tk
rn}z|�|jdd�Wdd}~XYnX|�d�|�t��|����WdQRXdS)NcSst�IdHdVdddS)Nr5�r)rrrrr	r�sz5AsyncGenTest.test_async_gen_exception_04.<locals>.gen)rrr5zStopIteration was not raised)	r8r1r/r)rrr9r=�ZeroDivisionError)r rr-r;rrrr	�test_async_gen_exception_04�s$
z(AsyncGenTest.test_async_gen_exception_04c	Cs.dd�}|�td��t|��WdQRXdS)NcSsdVt�dS)Nr5)rrrrr	r�sz5AsyncGenTest.test_async_gen_exception_05.<locals>.genz#async generator.*StopAsyncIteration)r�RuntimeErrorr)r rrrr	�test_async_gen_exception_05�sz(AsyncGenTest.test_async_gen_exception_05c	Cs.dd�}|�td��t|��WdQRXdS)NcSsdVt�dS)Nr5)rrrrr	r�sz5AsyncGenTest.test_async_gen_exception_06.<locals>.genzasync generator.*StopIteration)rrBr)r rrrr	�test_async_gen_exception_06�sz(AsyncGenTest.test_async_gen_exception_06cCs$dd�}dd�}|�|�|��dS)Ncss,zdVddWddVdVXdVdS)Nr?r���drrrrr	r2�sz:AsyncGenTest.test_async_gen_exception_07.<locals>.sync_gencSs,zdVddWddVdVXdVdS)Nr?rrErFrGrrrrr	r3sz;AsyncGenTest.test_async_gen_exception_07.<locals>.async_gen)r4)r r2r3rrr	�test_async_gen_exception_07�s

z(AsyncGenTest.test_async_gen_exception_07cCs$dd�}dd�}|�|�|��dS)Ncss,z
dVWddVdddVXdVdS)Nr?rErrFrGrrrrr	r2
s
z:AsyncGenTest.test_async_gen_exception_08.<locals>.sync_gencSsDzdVt�IdHWdt�IdHdVdddVXdVdS)Nr?rErrFrG)rrrrr	r3sz;AsyncGenTest.test_async_gen_exception_08.<locals>.async_gen)r4)r r2r3rrr	�test_async_gen_exception_08s
z(AsyncGenTest.test_async_gen_exception_08cCs$dd�}dd�}|�|�|��dS)Ncss,zdVddWddVdVXdVdS)Nr?rrErFrGrrrrr	r2&sz:AsyncGenTest.test_async_gen_exception_09.<locals>.sync_gencSsDzt�IdHdVddWddVt�IdHdVXdVdS)Nr?rrErFrG)rrrrr	r30sz;AsyncGenTest.test_async_gen_exception_09.<locals>.async_gen)r4)r r2r3rrr	�test_async_gen_exception_09%s
z(AsyncGenTest.test_async_gen_exception_09c	Cs4dd�}|�td��|����d�WdQRXdS)NcSs
dVdS)Nr5rrrrr	r?sz5AsyncGenTest.test_async_gen_exception_10.<locals>.genz!non-None value .* async generatorrG)r�	TypeErrorr/r
)r rrrr	�test_async_gen_exception_10>sz(AsyncGenTest.test_async_gen_exception_10cs<dd���fdd�}dd���fdd�}|�|�|��dS)	NcssdVdVdS)N�
�rrrrr	r2Fsz:AsyncGenTest.test_async_gen_exception_11.<locals>.sync_genc3sLdV��}|�d�y|�t��Wntk
r@dVYnXdVdS)Nr?rErF)r
r
�
GeneratorExit)�sg)r2rr	�sync_gen_wrapperJs
zBAsyncGenTest.test_async_gen_exception_11.<locals>.sync_gen_wrappercSsdVdVdS)NrMrNrrrrr	r3Tsz;AsyncGenTest.test_async_gen_exception_11.<locals>.async_gencsXdV��}|�d�IdHy|�t��IdHWntk
rLdVYnXdVdS)Nr?rErF)�asend�athrowrO)Zasg)r3rr	�async_gen_wrapperXszCAsyncGenTest.test_async_gen_exception_11.<locals>.async_gen_wrapper)r4)r rQrTr)r3r2r	�test_async_gen_exception_11Es


z(AsyncGenTest.test_async_gen_exception_11cCs�dd�}|�}|�|jd�d|_|�|jd�|�d|j�d|_|�|jd�|�|j�|�|jtj	�|�
|j�|�|jtj
�|�t�|����dS)NcSs
dVdS)Nr5rrrrr	resz/AsyncGenTest.test_async_gen_api_01.<locals>.genrZ123z.gen)r1r�assertInrZassertIsNone�ag_await�assertIsInstance�ag_frame�types�	FrameTyper:�
ag_running�ag_code�CodeTypeZ
assertTrue�inspectZisawaitable�aclose)r rr-rrr	�test_async_gen_api_01dsz"AsyncGenTest.test_async_gen_api_01N)rrrr4r7r<r>rArCrDrHrIrJrLrUrarrrr	r'`s=
		r'c@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�dS)N)rZnew_event_loop�loopZset_event_loop)r rrr	�setUp|s
zAsyncGenAsyncioTest.setUpcCs|j��d|_dS)N)rc�close)r rrr	�tearDown�s
zAsyncGenAsyncioTest.tearDownc	�s>g}x4|2y3dH}Wn
tk
s.X|�|�q
YW|S)N)rr)r rrrrrr	r�szAsyncGenAsyncioTest.to_listcs4�fdd�}�j���|���}��|ddg�dS)Ncs<dVtjd�jd�IdHdVtjd�jd�IdHdS)Nr?g{�G�z�?)rcrErF)r�sleeprcr)r rr	r�sz:AsyncGenAsyncioTest.test_async_gen_asyncio_01.<locals>.genr?rE)rcrrr1)r rrr)r r	�test_async_gen_asyncio_01�sz-AsyncGenAsyncioTest.test_async_gen_asyncio_01c	s:�fdd�}��t���j���|���WdQRXdS)Ncs4dVtjd�jd�IdHdVdddVdS)Nr?g{�G�z�?)rcrErrF)rrgrcr)r rr	r�s
z:AsyncGenAsyncioTest.test_async_gen_asyncio_02.<locals>.gen)r=r@rcrr)r rr)r r	�test_async_gen_asyncio_02�sz-AsyncGenAsyncioTest.test_async_gen_asyncio_02cs>|j�G�fdd�d�}��|�|���}|�|ddg�dS)NcseZdZ�fdd�ZdS)z:AsyncGenAsyncioTest.test_async_gen_asyncio_03.<locals>.Gencs$dVtjd�d�IdHdVdS)Nr?g{�G�z�?)rcrE)rrg)r )rcrr	r8�szDAsyncGenAsyncioTest.test_async_gen_asyncio_03.<locals>.Gen.__aiter__N)rrrr8r)rcrr	�Gen�srjr?rE)rcrrr1)r rjrr)rcr	�test_async_gen_asyncio_03�sz-AsyncGenAsyncioTest.test_async_gen_asyncio_03csH�fdd����fdd�}��fdd�}�j�|���j�|��dS)NcshdVtjd�jd�IdHydVdVWntk
rFdVYnXtjd�jd�IdHdVdS)Nr?g{�G�z�?)rcrErFi��)rrgrcr@r)r rr	�foo�s
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_04.<locals>.fooc	�s�����}��|��IdHd���|��IdHd���|��IdHd���|��IdHd���t��|��IdHWdQRX��t��|��IdHWdQRXdS)Nr?rErFrl)r8r1r/r=r)�it)rmr rr	�run1�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_anext_04.<locals>.run1c
�s�����}��|��IdHd���|��IdHd�y|���t�Wn4tk
r|}z��|jdd�Wdd}~XYnX��d���|��IdHd���t	��|��IdHWdQRXdS)Nr?rEri�zStopIteration was not raisedrl)
r8r1r/r
r@rrr9r=r)rnr)rmr rr	�run2�s
$
zAAsyncGenAsyncioTest.test_async_gen_asyncio_anext_04.<locals>.run2)rcr)r rorpr)rmr r	�test_async_gen_asyncio_anext_04�s
z3AsyncGenAsyncioTest.test_async_gen_asyncio_anext_04cs(dd����fdd�}�j�|��dS)NcSsdV}|V}|dVdS)Nr?rGr)�vrrr	rm�sz@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_05.<locals>.fooc
�s(����}y|���d�Wn4tk
rP}z��|jdd�Wdd}~XYnX��d�y|���d�Wn4tk
r�}z��|jdd�Wdd}~XYnX��d�y|���d�Wn4tk
r�}z��|jdd�Wdd}~XYnX��d���t��|��IdHWdQRXdS)Nrr?zStopIteration was not raisedrM�i�)	r8r/r
rr1rr9r=r)rnr)rmr rr	�run�s$
$
$
$
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_05.<locals>.run)rcr)r rtr)rmr r	�test_async_gen_asyncio_anext_05�sz3AsyncGenAsyncioTest.test_async_gen_asyncio_anext_05c	svd�dd�}|�}|�d���t��|�d�WdQRX�fdd�����fdd�}�j�|�����d�dS)	Nrcssy
dVWnYnXdS)Nrrrrr	rm�s
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06.<locals>.foocs y
dVWnYnXd�dS)Nr?rr)�DONErr	r
s

z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06.<locals>.genc	�sH��}|�d�IdH��t��|�d�IdHWdQRX�d7�dS)NrM)rRr=r)r-)rvrr rr	rts
z@AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06.<locals>.run�)r
r=rrcrr1)r rmr-rtr)rvrr r	�test_async_gen_asyncio_anext_06�s
z3AsyncGenAsyncioTest.test_async_gen_asyncio_anext_06cs(dd����fdd�}�j�|��dS)NcSs*y
dVWntk
r$dVYnXdS)N)r?)rE)r@rrrr	rms
zCAsyncGenAsyncioTest.test_async_gen_asyncio_anext_tuple.<locals>.fooc	�s�����}��|��IdHd���t��}|���t�WdQRX��|jjdd���t	��|��IdHWdQRXdS)N)r?r)rE)
r8r1r/r=rr
r@�	exceptionrr)rn�cm)rmr rr	rt$s
zCAsyncGenAsyncioTest.test_async_gen_asyncio_anext_tuple.<locals>.run)rcr)r rtr)rmr r	�"test_async_gen_asyncio_anext_tuples
z6AsyncGenAsyncioTest.test_async_gen_asyncio_anext_tuplecs(dd����fdd�}�j�|��dS)NcSs2ytd�VWntk
r,td�VYnXdS)Nr?rF)rr@rrrr	rm1szKAsyncGenAsyncioTest.test_async_gen_asyncio_anext_stopiteration.<locals>.fooc	�s�����}|��IdH}��|t���|jd���t��}|���t�WdQRX|j	j
d}��|t���|jd���t��|��IdHWdQRXdS)Nr?rrF)r8r/rXrr1�valuer=r
r@ryrr)rnrrrz)rmr rr	rt7s
zKAsyncGenAsyncioTest.test_async_gen_asyncio_anext_stopiteration.<locals>.run)rcr)r rtr)rmr r	�*test_async_gen_asyncio_anext_stopiteration0sz>AsyncGenAsyncioTest.test_async_gen_asyncio_anext_stopiterationc	sB�fdd���fdd�}��td���j�|��WdQRXdS)Nc
s6zdVddWdtjd�jd�IdHdVXdS)Nr?rg{�G�z�?)rcrs)rrgrcr)r rr	rmHs
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_06.<locals>.fooc�s.��}|��}|��IdH|��IdHdS)N)r8r/r`)rrn)rmrr	rtPszAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_06.<locals>.runz%async generator ignored GeneratorExit)rrBrcr)r rtr)rmr r	� test_async_gen_asyncio_aclose_06Gsz4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_06cs<d���fdd���fdd�}�j�|�����d�dS)Nrc
sVzdVddWdtjd�jd�IdHtjd�jd�IdH�d7�X�d7�dS)Nr?rg{�G�z�?)rci�)rrgrcr)rvr rr	rm^s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_07.<locals>.fooc�s.��}|��}|��IdH|��IdHdS)N)r8r/r`)rrn)rmrr	rtiszAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_07.<locals>.runr?)rcrr1)r rtr)rvrmr r	� test_async_gen_asyncio_aclose_07[s
z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_07csvd�tj�jd�����fdd����fdd�}�j�|��}���d����|���j�tjd�jd��dS)	Nr)rcc
sfz"dV�IdH�d7�dVWdtjd�jd�IdHtjd�jd�IdH�d7�X�d7�dS)Nr?i�rEg{�G�z�?)rc)rrgrcr)rvrr rr	rmws


zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_08.<locals>.fooc�s\��}|��}��|��IdHd��j�|���}tjd�jd�IdH|��IdH|S)Nr?g{�G�z�?)rc)r8r1r/rc�create_taskrrgr`)rrn�t)rmr rr	rt�szAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_08.<locals>.runr?g{�G�z�?)rZFuturercrr1�cancelrg)r rtr�r)rvrmrr r	� test_async_gen_asyncio_aclose_08rs
	z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_08cs>d���fdd����fdd�}�j�|�����d�dS)Nrc
sHzx
dVqWWdtjd�jd�IdHtjd�jd�IdHd�XdS)Nr?g{�G�z�?)rc)rrgrcr)rvr rr	r�szDAsyncGenAsyncioTest.test_async_gen_asyncio_gc_aclose_09.<locals>.genc�s>��}|��IdH|��IdH~tjd�jd�IdHdS)Ng�������?)rc)r/rrgrc)r-)rr rr	rt�s
zDAsyncGenAsyncioTest.test_async_gen_asyncio_gc_aclose_09.<locals>.runr?)rcrr1)r rtr)rvrr r	�#test_async_gen_asyncio_gc_aclose_09�s

z7AsyncGenAsyncioTest.test_async_gen_asyncio_gc_aclose_09cs\d�dd�}|�}|�d�|���fdd����fdd�}|j�|��|��d�dS)	Nrcssy
dVWnYnXdS)Nrrrrr	rm�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10.<locals>.foocs y
dVWnYnXd�dS)Nr?rr)rvrr	r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10.<locals>.genc�s0��}|�d�IdH|��IdH�d7�dS)NrM)rRr`)r-)rvrrr	rt�szAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10.<locals>.runrw)r
rercrr1)r rmr-rtr)rvrr	� test_async_gen_asyncio_aclose_10�s
z4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_10c	svd�dd�}|�}|�d���td��|��WdQRX�fdd�����fdd�}�j�|�����d	�dS)
Nrcss"y
dVWnYnXdVdS)Nrrrrr	rm�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11.<locals>.foozignored GeneratorExitcs*y
dVWnYnXdV�d7�dS)Nr?rr)rvrr	r�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11.<locals>.genc	�sH��}|�d�IdH��td��|��IdHWdQRX�d7�dS)Nzignored GeneratorExitrM)rRrrBr`)r-)rvrr rr	rt�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_11.<locals>.runrM)r
rrBrercrr1)r rmr-rtr)rvrr 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)Ng{�G�z�?r?r)rrgrrrr	�target�szDAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12.<locals>.targetcsFt����}z
dVWdy|IdHWntk
r>d�YnXXdS)Nr?)rr�r@)Ztask)rvr�rr	rm�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12.<locals>.fooc�s.��}|��}|��IdH|��IdHdS)N)r8r/r`)rrn)rmrr	rtszAAsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12.<locals>.runr?)rcrr1)r rtr)rvrmr�r	� test_async_gen_asyncio_aclose_12�sz4AsyncGenAsyncioTest.test_async_gen_asyncio_aclose_12csxd�dd�}|�}|�d�}��|d�|�d�}��|d���fdd����fd	d
�}�j�|�����d�dS)NrcssdV}|dVdS)Nr?rEr)rrrrr	�sgenszAAsyncGenAsyncioTest.test_async_gen_asyncio_asend_01.<locals>.sgenr?rG��c
s�zVtjd�jd�IdHdV}tjd�jd�IdH|dVtjd�jd�IdHdStjd�jd�IdHtjd�jd�IdHd�XdS)Ng{�G�z�?)rcr?rE)rrgrc)rr)rvr rr	rs
z@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_01.<locals>.genc	�sh��}|�d�IdH}��|d�|�d�IdH}��|d���t��|�d�IdHWdQRXdS)Nr?rGr�)rRr1r=r)r-rr)rr rr	rt)sz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_01.<locals>.run)r
r1rcr)r r�rPrrrtr)rvrr r	�test_async_gen_asyncio_asend_01s

z3AsyncGenAsyncioTest.test_async_gen_asyncio_asend_01c	sbd��fdd�����fdd����fdd�}��t���j�|��WdQRX���d�dS)	Nrc�s"tj|�jd�IdHdddS)N)rcr?r)rrgrc)�delay)r rr	�
sleep_n_crash;szJAsyncGenAsyncioTest.test_async_gen_asyncio_asend_02.<locals>.sleep_n_crashc
sxz@tjd�jd�IdHdV}�d�IdH�d7�|dVWdtjd�jd�IdHtjd�jd�IdHd�XdS)Ng{�G�z�?)rcr?i�rE)rrgrc)rr)rvr r�rr	r?sz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_02.<locals>.genc�s6��}|�d�IdH}��|d�|�d�IdHdS)Nr?rG)rRr1)r-rr)rr rr	rtLsz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_02.<locals>.runr?)r=r@rcrr1)r rtr)rvrr r�r	�test_async_gen_asyncio_asend_028s
z3AsyncGenAsyncioTest.test_async_gen_asyncio_asend_02c	sdd��fdd�����fdd����fdd�}��tj���j�|��WdQRX���d�dS)	Nrc�s@tjtj|�jd��jd���j�|d�fdd���IdHS)N)rcrEcs���S)N)r�r)rrr	�<lambda>^�z\AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.sleep_n_crash.<locals>.<lambda>)r�
ensure_futurergrc�
call_later)r�)r )rr	r�[s
zJAsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.sleep_n_crashc
sxz@tjd�jd�IdHdV}�d�IdH�d7�|dVWdtjd�jd�IdHtjd�jd�IdHd�XdS)Ng{�G�z�?)rcr?i�rE)rrgrc)rr)rvr r�rr	rasz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.genc�s6��}|�d�IdH}��|d�|�d�IdHdS)Nr?rG)rRr1)r-rr)rr rr	rtnsz@AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03.<locals>.runr?)r=r�CancelledErrorrcrr1)r rtr)rvrr r�r	�test_async_gen_asyncio_asend_03Xs
z3AsyncGenAsyncioTest.test_async_gen_asyncio_asend_03c	s�d�Gdd�dt���fdd�}|�}|�d�}��|d�|���}��|d���t��|�d�WdQRX���fdd	�����fd
d�}�j�|�����d�dS)Nrc@seZdZdS)zCAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.FooErN)rrrrrrr	�FooEr}sr�c3s2y
dV}Wn�k
r"d}YnX|dVdS)Nr?i�rEr)rr)r�rr	r��s


zBAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.sgenr?i�c
s�zttjd�jd�IdHy
dV}Wn.�k
rPd}tjd�jd�IdHYnX|dVtjd�jd�IdHWdtjd�jd�IdHtjd�jd�IdHd�XdS)Ng{�G�z�?)rcr?i�rE)rrgrc)rr)rvr�r rr	r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.genc	�sh��}|�d�IdH}��|d�|���IdH}��|d���t��|�d�IdHWdQRXdS)Nr?i�)rRr1rSr=r)r-rr)r�rr rr	rt�szAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01.<locals>.run)r*r
r1r
r=rrcr)r r�rPrrrtr)rvr�rr r	� test_async_gen_asyncio_athrow_01zs

z4AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_01c	szd�Gdd�dt���fdd������fdd������fdd	�}��tj���j�|��WdQRX���d
�dS)Nrc@seZdZdS)zCAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.FooErN)rrrrrrr	r��sr�c�s@tjtj|�jd��jd���j�|d�fdd���IdHS)N)rcrEcs���S)N)r�r)rrr	r��r�z]AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.sleep_n_crash.<locals>.<lambda>)rr�rgrcr�)r�)r )rr	r��s
zKAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.sleep_n_crashc
s�zhtjd�jd�IdHy
dV}Wn"�k
rD�d�IdHYnX|dVtjd�jd�IdHWdtjd�jd�IdHtjd�jd�IdHd�XdS)Ng{�G�z�?)rcr?rE)rrgrc)rr)rvr�r r�rr	r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.genc�sj��}|�d�IdH}��|d�y|���IdHWn$tjk
rZ���d��YnX��d�dS)Nr?zCancelledError was not raised)rRr1rSrr�r9)r-rr)rvr�rr rr	rt�szAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02.<locals>.runr?)r*r=rr�rcrr1)r rtr)rvr�rr r�r	� test_async_gen_asyncio_athrow_02�sz4AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_02c	svd�dd�}|�}|�d���t��|�t�WdQRX�fdd�����fdd�}�j�|�����d�dS)	Nrcssy
dVWnYnXdS)Nrrrrr	rm�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03.<locals>.foocs y
dVWnYnXd�dS)Nr?rr)rvrr	r�s

zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03.<locals>.genc	�sH��}|�d�IdH��t��|�t�IdHWdQRX�d7�dS)NrM)rRr=rrS�
ValueError)r-)rvrr rr	rt�s
zAAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03.<locals>.runrw)r
r=rr
r�rcrr1)r rmr-rtr)rvrr r	� test_async_gen_asyncio_athrow_03�s
z4AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_03cs(dd����fdd�}�j�|��dS)NcSs*y
dVWntk
r$dVYnXdS)Nr?)rE)r@rrrr	rs
zDAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_tuple.<locals>.genc	�sh��}|�d�IdH}��|d�|�t�IdH}��|d���t��|�d�IdHWdQRXdS)Nr?)rE)rRr1rSr@r=r)r-rr)rr rr	rtszDAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_tuple.<locals>.run)rcr)r rtr)rr r	�#test_async_gen_asyncio_athrow_tuples	z7AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_tuplecs(dd����fdd�}�j�|��dS)NcSs.y
dVWntk
r(td�VYnXdS)Nr?rE)r@rrrrr	rs
zLAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_stopiteration.<locals>.genc	�sv��}|�d�IdH}��|d�|�t�IdH}��|t���|jd���t��|�d�IdHWdQRXdS)Nr?rE)	rRr1rSr@rXrr|r=r)r-rr)rr rr	rtszLAsyncGenAsyncioTest.test_async_gen_asyncio_athrow_stopiteration.<locals>.run)rcr)r rtr)rr r	�+test_async_gen_asyncio_athrow_stopiterations
z?AsyncGenAsyncioTest.test_async_gen_asyncio_athrow_stopiterationcs�d���fdd���fdd�}�j�|��}�j�|��}�j�tjd�jd���j��j������d�|��|���j�tjd�jd��dS)	Nrc
sFz tj|�jd�IdHdVWdtjd�jd�IdH�d7�XdS)N)rcr?r)rrgrc)�timeout)�	finalizedr rr	�waiter(s

zFAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_01.<locals>.waiterc	�s4x.�d�2y3dH}Wq
tk
s$Xq
YWdS)Nr?)r)�_)r�rr	�wait1s"zDAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_01.<locals>.waitg�������?)rcrE)rcr�rrrg�shutdown_asyncgensr1r�)r r�Zt1Zt2r)r�r r�r	�"test_async_gen_asyncio_shutdown_01%s	z6AsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_01cs�d���fdd�}�fdd���fdd�}�j�|��}�j�tjd�jd	���j�|��j��j������d
�|���j�tjd�jd	��dS)Nrcs(��d|�d}||dkr$�d7�dS)NZasyncgenz0an error occurred during closing of asynchronous�messager?)rV)rc�contextZexpected)�loggedr rr	�loggerEszFAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_02.<locals>.loggercs0z tj|�jd�IdHdVWdddXdS)N)rcr?r)rrgrc)r�)r rr	r�Ls
zFAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_02.<locals>.waiterc	�s4x.�d�2y3dH}Wq
tk
s$Xq
YWdS)Nr?)r)r�)r�rr	r�Ss"zDAsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_02.<locals>.waitg�������?)rcr?)	rcr�rrrg�set_exception_handlerr�r1r�)r r�r�r�r)r�r r�r	�"test_async_gen_asyncio_shutdown_02Bsz6AsyncGenAsyncioTest.test_async_gen_asyncio_shutdown_02csP�fdd���fdd���fdd�}�j�|��}��|dd�td	�D��dS)
Ncs2x,t|�D] }tjd�jd�IdH|Vq
WdS)Ng{�G�z�?)rc)�rangerrgrc)�nr)r rr	�arangedsz@AsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.arangecsdd��|�2�S)Nc	Ss4|y3dH}Wn
tk
s&X|dVqYdS)NrE)r)�.0rrrr	�	<genexpr>ks
zXAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.make_arange.<locals>.<genexpr>r)r�)r�rr	�make_arangeiszEAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.make_arangec�sdd��d�2�IdHS)Nc
�s.g|y3dH}Wn
tk
s"X|�qYS)N)r)r�rrrr	�
<listcomp>nszQAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.run.<locals>.<listcomp>rMrr)r�rr	rtmsz=AsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.runcSsg|]}|d�qS)rEr)r�rrrr	r�qszDAsyncGenAsyncioTest.test_async_gen_expression_01.<locals>.<listcomp>rM)rcrr1r�)r rtrr)r�r�r r	�test_async_gen_expression_01cs
z0AsyncGenAsyncioTest.test_async_gen_expression_01csR�fdd���fdd���fdd�}�j�|��}��|dd�td	d
�D��dS)Nc�stjd�jd�IdH|S)Ng{�G�z�?)rc)rrgrc)r�)r rr	�wraptsz>AsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.wrapcs�fdd�t|�D�S)Ncs$|]}�|�IdHr|dVqdS)NrEr)r�r)r�rr	r�zszXAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.make_arange.<locals>.<genexpr>)r�)r�)r�rr	r�xszEAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.make_arangec�sdd��d�2�IdHS)Nc
�s.g|y3dH}Wn
tk
s"X|�qYS)N)r)r�rrrr	r�}szQAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.run.<locals>.<listcomp>rMrr)r�rr	rt|sz=AsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.runcSsg|]}|d�qS)rEr)r�rrrr	r��szDAsyncGenAsyncioTest.test_async_gen_expression_02.<locals>.<listcomp>r?rM)rcrr1r�)r rtrr)r�r r�r	�test_async_gen_expression_02ss
z0AsyncGenAsyncioTest.test_async_gen_expression_02csBg��fdd��dd����fdd�}t�|��|�g��dS)Ncs��|�dS)N)r)rcr�)�messagesrr	�exception_handler�sz]AsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellable.<locals>.exception_handlercSsdVdVdS)Nr?rErrrrr	r0�szYAsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellable.<locals>.async_iteratec	�sFt��}|���x.��2y3dH}Wn
tk
s6XPqYWdS)N)rZget_running_loopr�r)rcr)r0r�rr	�main�s
 zPAsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellable.<locals>.main)rrtr1)r r�r)r0r�r�r	�.test_asyncgen_nonstarted_hooks_are_cancellable�szBAsyncGenAsyncioTest.test_asyncgen_nonstarted_hooks_are_cancellablecs(dd����fdd�}�j�|��dS)NcSsdVdVdS)Nr?rErrrrr	r0�szUAsyncGenAsyncioTest.test_async_gen_await_same_anext_coro_twice.<locals>.async_iteratec	�sL��}|��}|IdH��td��|IdHWdQRX|��IdHdS)Nz4cannot reuse already awaited __anext__\(\)/asend\(\))r/rrBr`)rn�nxt)r0r rr	rt�s
zKAsyncGenAsyncioTest.test_async_gen_await_same_anext_coro_twice.<locals>.run)rcr)r rtr)r0r r	�*test_async_gen_await_same_anext_coro_twice�sz>AsyncGenAsyncioTest.test_async_gen_await_same_anext_coro_twicecs(dd����fdd�}�j�|��dS)NcSsdVdVdS)Nr?rErrrrr	r0�szVAsyncGenAsyncioTest.test_async_gen_await_same_aclose_coro_twice.<locals>.async_iteratec	�s>��}|��}|IdH��td��|IdHWdQRXdS)Nz2cannot reuse already awaited aclose\(\)/athrow\(\))r`rrB)rnr�)r0r rr	rt�s
zLAsyncGenAsyncioTest.test_async_gen_await_same_aclose_coro_twice.<locals>.run)rcr)r rtr)r0r r	�+test_async_gen_await_same_aclose_coro_twice�s
z?AsyncGenAsyncioTest.test_async_gen_await_same_aclose_coro_twicecs&dd���fdd�}|j�|��dS)NcSsdVdVdS)Nr?rErrrrr	r0�sz[AsyncGenAsyncioTest.test_async_gen_aclose_twice_with_different_coros.<locals>.async_iteratec�s&��}|��IdH|��IdHdS)N)r`)rn)r0rr	rt�szQAsyncGenAsyncioTest.test_async_gen_aclose_twice_with_different_coros.<locals>.run)rcr)r rtr)r0r	�0test_async_gen_aclose_twice_with_different_coros�szDAsyncGenAsyncioTest.test_async_gen_aclose_twice_with_different_coroscs&dd���fdd�}|j�|��dS)NcSsdVdVdS)Nr?rErrrrr	r0�szQAsyncGenAsyncioTest.test_async_gen_aclose_after_exhaustion.<locals>.async_iteratec	�sD��}x*|2y3dH}Wqtk
s&XqYW|��IdHdS)N)rr`)rnr�)r0rr	rt�szGAsyncGenAsyncioTest.test_async_gen_aclose_after_exhaustion.<locals>.run)rcr)r rtr)r0r	�&test_async_gen_aclose_after_exhaustion�sz:AsyncGenAsyncioTest.test_async_gen_aclose_after_exhaustionN)&rrrrdrfrrhrirkrqrurxr{r}r~rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr	rbzsF*###!%* "5.#!
rb�__main__)r_rZZunittestZtest.supportrrr*r�	coroutinerrrZTestCaserr'rbrr�rrrr	�<module>s,
1c