§
    dŠtjÔ  ã                   óŒ   — d dl Z d dlZddlm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
        ¦   «          dS dS )	é    Né   )Ú_test_extension)ÚTestCase)Úignores_leakcheckc                   óf   — 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ed„ ¦   «         ZdS )Ú	CAPITestsc                 ó|   — |                       dt          j        t          j        d„ ¦  «        ¦  «        ¦  «         d S )Né2   c                  ó   — dS )Nr
   © r   ó    úe/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/greenlet/tests/test_extension_interface.pyú<lambda>z'CAPITests.test_switch.<locals>.<lambda>   s   € Àb€ r   )ÚassertEqualr   Útest_switchÚgreenlet©Úselfs    r   r   zCAPITests.test_switch   sF   € Ø×ÒØ•Ô+­HÔ,=¸j¸jÑ,IÔ,IÑJÔJñ	Lô 	Lð 	Lð 	Lð 	Lr   c                 ó  — d„ }t          j         |¦  «        }|                      dt          j        |dd¬¦  «        ¦  «         |                      t
          d¦  «        5  t          j        d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 ó   — | |z  S ©Nr   ©ÚxÚys     r   Úadderz+CAPITests.test_switch_kwargs.<locals>.adder   s   € Ø�q‘5ˆLr   é   é   é   r   zargument 1 must be greenletznot a greenlet)r   r   r   Útest_switch_kwargsÚassertRaisesRegexÚ	TypeError)r   r   Úgs      r   r   zCAPITests.test_switch_kwargs   sê   € ð	ð 	ð 	åÔ˜eÑ$Ô$ˆØ×Ò˜�OÔ>¸qÀAÈÐKÑKÔKÑLÔLÐLà×#Ò#¥IÐ/LÑMÔMð 	Að 	AÝÔ.Ð/?Ñ@Ô@Ð@ð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Að 	Að 	As   ÁB Â BÂBc                 ó¨   — d„ }t          j         |¦  «                             ¦   «         }|                      d t          j        |¦  «        ¦  «         d S )Nc                  ó"  — d„ } t          j         | ¦  «        }|                     ¦   «          t          j        ¦   «         j                             |¦  «         t          j        ¦   «         j                             t          d¦  «        ¦  «         d S )Nc                  óÈ   — t          j        ¦   «         j                             ¦   «          t          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   sO   € ÝÔ#Ñ%Ô%Ô,×3Ò3Ñ5Ô5Ð5õ
 Ô#Ñ%Ô%Ô,×3Ò3Ñ5Ô5Ð5Ý$Ð%JÑKÔKÐKr   zShould never reach this code)r   r(   r&   r'   Úthrowr)   )r*   Úchilds     r   Úfooz%CAPITests.test_setparent.<locals>.foo   s’   € ðLð Lð Lõ Ô% cÑ*Ô*ˆEØ�LŠL‰NŒNˆNÝÔÑ!Ô!Ô(×/Ò/°Ñ6Ô6Ð6ÝÔÑ!Ô!Ô(×.Ò.ÝÐ=Ñ>Ô>ñ@ô @ð @ð @ð @r   )r   r(   r   r   Útest_setparent)r   r-   Ú	foo_childs      r   r.   zCAPITests.test_setparent   sY   € ð	@ð 	@ð 	@õ Ô% cÑ*Ô*×1Ò1Ñ3Ô3ˆ	Ø×Ò˜�Ô=¸iÑHÔHÑIÔIÐIÐIÐIr   c                 ó,   — t          j        ¦   «          d S r   )r   Útest_getcurrentr   s    r   r1   zCAPITests.test_getcurrent+   s   € ÝÔ'Ñ)Ô)Ð)Ð)Ð)r   c                 óX   — |                       dt          j        d„ ¦  «        ¦  «         d S )Néñÿÿÿc                  ó   — dS )Nr3   r   r   r   r   r   z-CAPITests.test_new_greenlet.<locals>.<lambda>/   s   € È€ r   )r   r   Útest_new_greenletr   s    r   r5   zCAPITests.test_new_greenlet.   s+   € Ø×Ò˜�oÔ?ÀÀÑLÔLÑMÔMÐMÐMÐMr   c                 óZ   — |                       t          j        t          j        ¦  «         d S r   )ÚassertRaisesr   ÚGreenletExitr   Útest_raise_dead_greenletr   s    r   Útest_raise_greenlet_deadz"CAPITests.test_raise_greenlet_dead1   s4   € Ø×ÒÝÔ!¥?Ô#Kñ	Mô 	Mð 	Mð 	Mð 	Mr   c                 óZ   — |                       t          j        t          j        ¦  «         d S r   )r7   r   Úerrorr   Útest_raise_greenlet_errorr   s    r   r=   z#CAPITests.test_raise_greenlet_error5   s3   € Ø×ÒÝŒN�OÔEñ	Gô 	Gð 	Gð 	Gð 	Gr   c                 ó†  ‡— g Šˆfd„}t          j         |¦  «        }|                     ¦   «          t          j        |¦  «         |                      t          ‰¦  «        d¦  «         |                      t          ‰d         t          ¦  «        d¦  «         |                      t          ‰d         ¦  «        dd¦  «         d S )Nc                  ó  •— 	 t          j        ¦   «         j                             ¦   «          d S # t          $ r0 ‰                      t          j        ¦   «         d         ¦  «         Y d S 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Ô5Ð5Ð5Ð5øÝð /ð /ð /Ø—’�CœL™NœN¨1Ô-Ñ.Ô.Ð.Ð.Ð.Ð.ÝÔ(ð %ð %ð %Ý$Ð$ð%øøøs   ƒ*/ ¯6A>Á(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_throw9   sÎ   ø€ Øˆð	%ð 	%ð 	%ð 	%ð 	%õ Ô˜cÑ"Ô"ˆØ	�Š‰
Œ
ˆ
ÝÔ" 1Ñ%Ô%Ð%Ø×Ò�˜T™œ AÑ&Ô&Ð&Ø�ŠÝ�t˜A”w¥
Ñ+Ô+Ø0ñ	2ô 	2ð 	2ð 	×ÒÝ��Q”‰LŒLØØ#ñ	%ô 	%ð 	%ð 	%ð 	%r   c                 ó,  — |                       t          ¦  «        5 }t          j        t	          j        ¦   «         t          t          ¦   «         | ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          |j	        ¦  «        d¦  «         d S )Nz1throw() third argument must be a traceback object)
r7   r!   r   Útest_throw_exactr   r&   Ú	Exceptionr   rI   Ú	exception©r   Úexcs     r   Útest_non_traceback_paramz"CAPITests.test_non_traceback_paramO   sÎ   € Ø×Ò�yÑ)Ô)ð 	¨SÝÔ,ÝÔ#Ñ%Ô%ÝÝ‘”Øñ	ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò�˜Sœ]Ñ+Ô+ØLñ	Nô 	Nð 	Nð 	Nð 	Ns   ›:A!Á!A%Á(A%c                 ó:  — |                       t          ¦  «        5 }t          j        t	          j        ¦   «         t          ¦   «         t          ¦   «         d ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          |j
        ¦  «        d¦  «         d S )Nz0instance exception may not have a separate value)r7   r!   r   rK   r   r&   rL   ÚBaseExceptionr   rI   rM   rN   s     r   Útest_instance_of_wrong_typez%CAPITests.test_instance_of_wrong_typeZ   sÒ   € Ø×Ò�yÑ)Ô)ð 	¨SÝÔ,ÝÔ#Ñ%Ô%Ý‘”Ý‘”Øñ	ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò�˜Sœ]Ñ+Ô+ØKñ	Mô 	Mð 	Mð 	Mð 	Ms   ›AA(Á(A,Á/A,c                 ó
  — |                       t          ¦  «        5 }t          j        t	          j        ¦   «         dd d ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          |j        ¦  «        d¦  «         d S )NÚabcz1exceptions must be classes, or instances, not str)	r7   r!   r   rK   r   r&   r   rI   rM   rN   s     r   Útest_not_throwablezCAPITests.test_not_throwablef   sÊ   € Ø×Ò�yÑ)Ô)ð 	¨SÝÔ,ÝÔ#Ñ%Ô%ØØØñ	ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò�˜Sœ]Ñ+Ô+ØLñ	Nô 	Nð 	Nð 	Nð 	Ns   ›)AÁAÁAc                 ó2  ‡— ddl m} d}|rdg|z  }ndg|z  }dd„ fdd„ fd	d
„ ffD ]o\  }Š|                      |¦  «        5  ˆfd„t          |¦  «        D ¦   «         }d„ |D ¦   «         }|                      ||¦  «         d d d ¦  «         n# 1 swxY w Y   Œpd S )Nr   )ÚPY314éd   r   r   c                  óX   — t          j        t          j        t          ¦  «        ¦  «        S r   )r   r   r   Úobjectr   r   r   r   z&CAPITests.test_leaks.<locals>.<lambda>{   s   € •_Ô0µÔ1BÅ6Ñ1JÔ1JÑKÔK€ r   r   c                  óX   — t          j        t          j        t          ¦  «        ¦  «        S r   )r   r   r   r[   r   r   r   r   z&CAPITests.test_leaks.<locals>.<lambda>}   s   € •_Ô7½Ô8IÍ&Ñ8QÔ8QÑRÔR€ r   r5   c                  ó4   — t          j        t          ¦  «        S r   )r   r5   r[   r   r   r   r   z&CAPITests.test_leaks.<locals>.<lambda>   s   € •_Ô6µvÑ>Ô>€ r   c                 ó$   •— g | ]} ‰¦   «         ‘ŒS r   r   )Ú.0Ú_Úcallers     €r   ú
<listcomp>z(CAPITests.test_leaks.<locals>.<listcomp>‚   s   ø€ Ð:Ð:Ð:¨˜6˜6™8œ8Ð:Ð:Ð:r   c                 ó<   — g | ]}t          j        |¦  «        d z
  ‘ŒS )r   )rB   Úgetrefcount)r_   Úis     r   rb   z(CAPITests.test_leaks.<locals>.<listcomp>ƒ   s7   € ð ð ð àõ ”O AÑ&Ô&¨Ñ*ðð ð r   )Ú rX   ÚsubTestÚranger   )r   rX   ÚitersÚexpected_refsÚnameÚresultsÚrefsra   s          @r   Ú
test_leakszCAPITests.test_leaksq   sG  ø€ àÐÐÐÐÐØˆØð 	(Ø˜C %™KˆMˆMà˜C %™KˆMàØKÐKðMà!ØRÐRðTà Ø>Ð>ð@ð
ð 	6ð 	6‰LˆD�&ð —’˜dÑ#Ô#ð 6ð 6Ø:Ð:Ð:Ð:­U°5©\¬\Ð:Ñ:Ô:�ðð ð ðñ ô �ð
 × Ò   }Ñ5Ô5Ð5ð6ð 6ð 6ñ 6ô 6ð 6ð 6ð 6ð 6ð 6ð 6øøøð 6ð 6ð 6ð 6øð	6ð 	6s   Á>BÂB	ÂB	N)Ú__name__Ú
__module__Ú__qualname__r   r   r.   r1   r5   r:   r=   rE   rP   rS   rV   r   rn   r   r   r   r   r   
   sð   € € € € € ðLð Lð LðAð Að AðJð Jð Jð&*ð *ð *ðNð Nð NðMð Mð MðGð Gð Gð%ð %ð %ð,	Nð 	Nð 	Nð
Mð 
Mð 
Mð	Nð 	Nð 	Nð ð6ð 6ñ Ôð6ð 6ð 6r   r   Ú__main__)rB   r   rf   r   r   Ú	leakcheckr   r   ro   ÚunittestÚmainr   r   r   ú<module>rv      s¯   ðØ 
€
€
€
à €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (ð~6ð ~6ð ~6ð ~6ð ~6�ñ ~6ô ~6ð ~6ðB ˆzÒÐØ€O€O€OØ€H„M�O„O€O€O€Oð Ðr   