Ë
    v¹1hõ  ã                   ó�   — d dl mZ d dl mZ d dlZd dlZddlmZ ddlmZ  G d„ de«      Ze	d	k(  rd dl
Z
 e
j                  «        yy)
é    )Úprint_function)Úabsolute_importNé   )Ú_test_extension)ÚTestCasec                   óN   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zy)Ú	CAPITestsc                 óv   — | j                  dt        j                  t        j                  d„ «      «      «       y )Né2   c                   ó   — y)Nr   © r   ó    úe/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/greenlet/tests/test_extension_interface.pyú<lambda>z'CAPITests.test_switch.<locals>.<lambda>   ó   � r   )ÚassertEqualr   Útest_switchÚgreenlet©Úselfs    r   r   zCAPITests.test_switch   s,   € Ø×ÑØ”×+Ñ+¬H×,=Ñ,=¹jÓ,IÓJõ	Lr   c                 ó„   — d„ }t        j                   |«      }| j                  dt        j                  |dd¬«      «       y )Nc                 ó   — | |z  S ©Nr   ©ÚxÚys     r   Úadderz+CAPITests.test_switch_kwargs.<locals>.adder   s   € Ø�q‘5ˆLr   é   é   é   r   )r   r   r   Útest_switch_kwargs)r   r   Úgs      r   r!   zCAPITests.test_switch_kwargs   s6   € ò	ä×Ñ˜eÓ$ˆØ×Ñ˜œO×>Ñ>¸qÀAÈÔKÕLr   c                 óš   — d„ }t        j                   |«      j                  «       }| j                  d t        j                  |«      «       y )Nc                  ó  — d„ } t        j                   | «      }|j                  «        t        j                  «       j                  j                  |«       t        j                  «       j                  j	                  t        d«      «       y )Nc                  óÈ   — t        j                  «       j                  j                  «        t        j                  «       j                  j                  «        t	        d«      ‚)Nz#Should never have reached this code)r   Ú
getcurrentÚparentÚswitchÚAssertionErrorr   r   r   Úbarz2CAPITests.test_setparent.<locals>.foo.<locals>.bar   sF   € Ü×#Ñ#Ó%×,Ñ,×3Ñ3Ô5ô
 ×#Ñ#Ó%×,Ñ,×3Ñ3Ô5Ü$Ð%JÓKÐKr   zShould never reach this code)r   r(   r&   r'   Úthrowr)   )r*   Úchilds     r   Úfooz%CAPITests.test_setparent.<locals>.foo   sg   € òLô ×%Ñ% cÓ*ˆEØ�L‰LŒNÜ×ÑÓ!×(Ñ(×/Ñ/°Ô6Ü×ÑÓ!×(Ñ(×.Ñ.ÜÐ=Ó>õ@r   )r   r(   r   r   Útest_setparent)r   r-   Ú	foo_childs      r   r.   zCAPITests.test_setparent   s>   € ò	@ô ×%Ñ% cÓ*×1Ñ1Ó3ˆ	Ø×Ñ˜œ×=Ñ=¸iÓHÕIr   c                 ó,   — t        j                  «        y r   )r   Útest_getcurrentr   s    r   r1   zCAPITests.test_getcurrent*   s   € Ü×'Ñ'Õ)r   c                 óP   — | j                  dt        j                  d„ «      «       y )Néñÿÿÿc                   ó   — y)Nr3   r   r   r   r   r   z-CAPITests.test_new_greenlet.<locals>.<lambda>.   r   r   )r   r   Útest_new_greenletr   s    r   r5   zCAPITests.test_new_greenlet-   s   € Ø×Ñ˜œo×?Ñ?ÁÓLÕMr   c                 ó`   — | j                  t        j                  t        j                  «       y r   )ÚassertRaisesr   ÚGreenletExitr   Útest_raise_dead_greenletr   s    r   Útest_raise_greenlet_deadz"CAPITests.test_raise_greenlet_dead0   s"   € Ø×ÑÜ×!Ñ!¤?×#KÑ#Kõ	Mr   c                 ó`   — | j                  t        j                  t        j                  «       y r   )r7   r   Úerrorr   Útest_raise_greenlet_errorr   s    r   r=   z#CAPITests.test_raise_greenlet_error4   s    € Ø×ÑÜ�N‰NœO×EÑEõ	Gr   c                 óB  ‡— g Šˆfd„}t        j                   |«      }|j                  «        t        j                  |«       | j	                  t        ‰«      d«       | j                  t        ‰d   t        «      d«       | j	                  t        ‰d   «      dd«       y )Nc                  óú   •— 	 t        j                  «       j                  j                  «        y # t        $ r) ‰ j                  t        j                  «       d   «       Y y t         j                  $ r t        ‚w xY w)Nr   )
r   r&   r'   r(   Ú
ValueErrorÚappendÚsysÚexc_infor8   r)   )Úseens   €r   r-   z!CAPITests.test_throw.<locals>.foo;   s]   ø€ ð%Ü×#Ñ#Ó%×,Ñ,×3Ñ3Õ5øÜò /Ø—‘œCŸL™L›N¨1Ñ-Ö.Ü×(Ñ(ò %Ü$Ð$ð%ús   ƒ,0 °/A:Á!A:r   r   z"ValueError was not raised in foo()ztake that sucka!zmessage doesn't match)
r   r(   r   Ú
test_throwr   ÚlenÚ
assertTrueÚ
isinstancer@   Ústr)r   r-   r"   rD   s      @r   rE   zCAPITests.test_throw8   sˆ   ø€ Øˆô	%ô ×Ñ˜cÓ"ˆØ	�‰Œ
Ü×"Ñ" 1Ô%Ø×Ñœ˜T› AÔ&Ø�‰Ü�t˜A‘w¤
Ó+Ø0ô	2ð 	×ÑÜ��Q‘‹LØØ#õ	%r   c                 ó  — | j                  t        «      5 }t        j                  t	        j
                  «       t        t        «       | «       d d d «       | j                  t        j                  «      d«       y # 1 sw Y   Œ/xY w)Nz1throw() third argument must be a traceback object)
r7   Ú	TypeErrorr   Útest_throw_exactr   r&   Ú	Exceptionr   rI   Ú	exception©r   Úexcs     r   Útest_non_traceback_paramz"CAPITests.test_non_traceback_paramN   sk   € Ø×ÑœyÓ)ð 	¨SÜ×,Ñ,Ü×#Ñ#Ó%ÜÜ“Øô	÷	ð 	×Ñœ˜SŸ]™]Ó+ØLõ	N÷	ð 	ús   –7A;Á;Bc                 ó  — | j                  t        «      5 }t        j                  t	        j
                  «       t        «       t        «       d «       d d d «       | j                  t        j                  «      d«       y # 1 sw Y   Œ/xY w)Nz0instance exception may not have a separate value)r7   rK   r   rL   r   r&   rM   ÚBaseExceptionr   rI   rN   rO   s     r   Útest_instance_of_wrong_typez%CAPITests.test_instance_of_wrong_typeY   sm   € Ø×ÑœyÓ)ð 	¨SÜ×,Ñ,Ü×#Ñ#Ó%Ü“Ü“Øô	÷	ð 	×Ñœ˜SŸ]™]Ó+ØKõ	M÷	ð 	ús   –;A?Á?Bc                 óö   — | j                  t        «      5 }t        j                  t	        j
                  «       dd d «       d d d «       | j                  t        j                  «      d«       y # 1 sw Y   Œ/xY w)NÚabcz1exceptions must be classes, or instances, not str)	r7   rK   r   rL   r   r&   r   rI   rN   rO   s     r   Útest_not_throwablezCAPITests.test_not_throwablee   si   € Ø×ÑœyÓ)ð 	¨SÜ×,Ñ,Ü×#Ñ#Ó%ØØØô	÷	ð 	×Ñœ˜SŸ]™]Ó+ØLõ	N÷	ð 	ús   –+A/Á/A8N)Ú__name__Ú
__module__Ú__qualname__r   r!   r.   r1   r5   r:   r=   rE   rQ   rT   rW   r   r   r   r	   r	      sB   „ òLòMòJò&*òNòMòGò%ò,	Nò
Mó	Nr   r	   Ú__main__)Ú
__future__r   r   rB   r   Ú r   r   r	   rX   ÚunittestÚmainr   r   r   ú<module>r`      sE   ðÝ %Ý &ã 
ã Ý Ý ôbN�ô bNðJ ˆzÒÛØ€H‡M�M…Oð r   