§
    ‹Ÿj  ã                   óž  — d dl mZ d dlZd dlZd dlZd dlZd dlmZmZm	Z	m
Z
 d dlmZmZ d dlmZ d dlmZ d dlmZ d dlmZmZmZ  G d	„ d
e¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ d¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z e!dk    r ej"        ¦   «          dS dS )é    )ÚfuturesN)ÚFutureÚchain_futureÚrun_on_executorÚ"future_set_result_unless_cancelled)Úutf8Ú
to_unicode)Úgen)ÚIOStream)Ú	TCPServer)ÚAsyncTestCaseÚbind_unused_portÚgen_testc                   ó   — e Zd Zd„ ZdS )ÚMiscFutureTestc                 ó  — t          ¦   «         }t          |d¦  «         |                      |                     ¦   «         d¦  «         |                      |                     ¦   «         ¦  «         t          ¦   «         }|                     ¦   «          |                     ¦   «         }t          |d¦  «         |                      |                     ¦   «         |¦  «         |s*|                      |                     ¦   «         d¦  «         d S d S ©Né*   )r   r   ÚassertEqualÚresultÚassertFalseÚ	cancelledÚcancel)ÚselfÚfutÚis_cancelleds      úi/var/www/finuniver-perm.ru/html/student/venv/lib/python3.11/site-packages/tornado/test/concurrent_test.pyÚ'test_future_set_result_unless_cancelledz6MiscFutureTest.test_future_set_result_unless_cancelled#   sÜ   € Ý‰hŒhˆÝ*¨3°Ñ3Ô3Ð3Ø×Ò˜Ÿš™œ rÑ*Ô*Ð*Ø×Ò˜Ÿš™œÑ)Ô)Ð)å‰hŒhˆØ�
Š
‰ŒˆØ—}’}‘”ˆÝ*¨3°Ñ3Ô3Ð3Ø×Ò˜Ÿš™œ¨,Ñ7Ô7Ð7Øð 	/Ø×Ò˜SŸZšZ™\œ\¨2Ñ.Ô.Ð.Ð.Ð.ð	/ð 	/ó    N)Ú__name__Ú
__module__Ú__qualname__r   © r   r   r   r   "   s#   € € € € € ð/ð /ð /ð /ð /r   r   c                   ó:   — e Zd Zed„ ¦   «         Zed„ ¦   «         ZdS )ÚChainFutureTestc              ƒ   óÈ   K  — t          ¦   «         }t          ¦   «         }t          ||¦  «         |                     d¦  «         |ƒ d {V —†}|                      |d¦  «         d S r   )r   r   Ú
set_resultr   )r   r   Úfut2r   s       r   Útest_asyncio_futuresz$ChainFutureTest.test_asyncio_futures3   sg   è è € å!™8œ8ˆÝ"™HœHˆÝ�S˜$ÑÔÐØ�Š�rÑÔÐØ������ˆØ×Ò˜ Ñ$Ô$Ð$Ð$Ð$r   c              ƒ   ó  K  — t          j        ¦   «         }t          j        ¦   «         }t          ¦   «         }t          ||¦  «         t          ||¦  «         |                     d¦  «         |ƒ d {V —†}|                      |d¦  «         d S r   )r   r   r   r'   r   )r   r   r(   Úfut3r   s        r   Útest_concurrent_futuresz'ChainFutureTest.test_concurrent_futures<   sŠ   è è € õ
 $+¤>Ñ#3Ô#3ˆÝ$+¤NÑ$4Ô$4ˆÝ"™HœHˆÝ�S˜$ÑÔÐÝ�T˜4Ñ Ô Ð Ø�Š�rÑÔÐØ������ˆØ×Ò˜ Ñ$Ô$Ð$Ð$Ð$r   N)r    r!   r"   r   r)   r,   r#   r   r   r%   r%   2   sH   € € € € € Øð%ð %ñ „Xð%ð ð%ð %ñ „Xð%ð %ð %r   r%   c                   ó.   — e Zd Zej        d„ ¦   «         ZdS )Ú	CapServerc              #   óH  K  — |                      d¦  «        V —}t          |¦  «        }||                     ¦   «         k    r|                     d¦  «         n7|                     t	          d|                     ¦   «         z  ¦  «        ¦  «         |                     ¦   «          d S )Nó   
s   error	already capitalized
zok	%s)Ú
read_untilr	   ÚupperÚwriter   Úclose)r   ÚstreamÚaddressÚdatas       r   Úhandle_streamzCapServer.handle_streamP   s�   è è € à×&Ò& uÑ-Ô-Ð-Ð-ˆÝ˜$ÑÔˆØ�4—:’:‘<”<ÒÐØ�LŠLÐ8Ñ9Ô9Ð9Ð9ð �LŠL�˜h¨¯ª©¬Ñ5Ñ6Ô6Ñ7Ô7Ð7Ø�Š‰Œˆˆˆr   N)r    r!   r"   r
   Ú	coroutiner8   r#   r   r   r.   r.   O   s/   € € € € € Ø„]ðð ñ „]ðð ð r   r.   c                   ó   — e Zd ZdS )ÚCapErrorN)r    r!   r"   r#   r   r   r;   r;   \   s   € € € € € Ø€Dr   r;   c                   ó   — e Zd Zd„ Zd„ ZdS )ÚBaseCapClientc                 ó   — || _         d S ©N©Úport)r   rA   s     r   Ú__init__zBaseCapClient.__init__a   s   € ØˆŒ	ˆ	ˆ	r   c                 óÄ   — t          j        dt          |¦  «        ¦  «        }|€t          d¦  «        ‚|                     ¦   «         \  }}|dk    r|S t          |¦  «        ‚)Nz
(.*)	(.*)
zdid not matchÚok)ÚreÚmatchr	   Ú	ExceptionÚgroupsr;   )r   r7   ÚmÚstatusÚmessages        r   Úprocess_responsezBaseCapClient.process_responsed   s[   € ÝŒH�^¥Z°Ñ%5Ô%5Ñ6Ô6ˆØˆ9Ý˜OÑ,Ô,Ð,ØŸ(š(™*œ*‰ˆ�Ø�TŠ>ˆ>ØˆNå˜7Ñ#Ô#Ð#r   N)r    r!   r"   rB   rL   r#   r   r   r=   r=   `   s2   € € € € € ðð ð ð$ð $ð $ð $ð $r   r=   c                   ó.   — e Zd Zej        d„ ¦   «         ZdS )ÚGeneratorCapClientc              #   ó  K  — t          j        d¦  «         t          t          j        ¦   «         ¦  «        }t          j        d¦  «         |                     d| j        f¦  «        V — |                     t          |dz   ¦  «        ¦  «         t          j        d¦  «         |                     d¦  «        V —}t          j        d¦  «         | 	                    ¦   «          t          j        |                      |¦  «        ¦  «        ‚)NÚ
capitalizeÚ
connectingz	127.0.0.1ú
Úreadingr0   Ú	returning)ÚloggingÚdebugr   ÚsocketÚconnectrA   r3   r   r1   r4   r
   ÚReturnrL   )r   Úrequest_datar5   r7   s       r   rP   zGeneratorCapClient.capitalizep   sÛ   è è € åŒ�lÑ#Ô#Ð#Ý�&œ-™/œ/Ñ*Ô*ˆÝŒ�lÑ#Ô#Ð#Ø�nŠn˜k¨4¬9Ð5Ñ6Ô6Ð6Ð6Ð6Ø�Š•T˜,¨Ñ-Ñ.Ô.Ñ/Ô/Ð/ÝŒ�iÑ Ô Ð Ø×&Ò& uÑ-Ô-Ð-Ð-ˆÝŒ�kÑ"Ô"Ð"Ø�Š‰ŒˆÝŒj˜×.Ò.¨tÑ4Ô4Ñ5Ô5Ð5r   N)r    r!   r"   r
   r9   rP   r#   r   r   rN   rN   o   s/   € € € € € Ø„]ð
6ð 
6ñ „]ð
6ð 
6ð 
6r   rN   c                   ó@   ‡ — e Zd Zˆ fd„Zˆ fd„Zd„ Zd„ Zd„ Zd„ Zˆ xZ	S )ÚGeneratorCapClientTestc                 óð   •— t          ¦   «                              ¦   «          t          ¦   «         | _        t	          ¦   «         \  }}| j                             |g¦  «         t          |¬¦  «        | _        d S )Nr@   )ÚsuperÚsetUpr.   Úserverr   Úadd_socketsrN   Úclient)r   ÚsockrA   Ú	__class__s      €r   r_   zGeneratorCapClientTest.setUp   s\   ø€ Ý‰Œ�Š‰ŒˆÝ‘k”kˆŒÝ%Ñ'Ô'‰
ˆˆdØŒ×Ò  Ñ'Ô'Ð'Ý(¨dÐ3Ñ3Ô3ˆŒˆˆr   c                 óz   •— | j                              ¦   «          t          ¦   «                              ¦   «          d S r?   )r`   Ústopr^   ÚtearDown)r   rd   s    €r   rg   zGeneratorCapClientTest.tearDown†   s3   ø€ ØŒ×ÒÑÔÐÝ‰Œ×ÒÑÔÐÐÐr   c                 óò   — | j                              d¦  «        }| j                             || j        ¦  «         |                      ¦   «          |                      |                     ¦   «         d¦  «         d S ©NÚhelloÚHELLO)rb   rP   Úio_loopÚ
add_futurerf   Úwaitr   r   ©r   Úfutures     r   Útest_futurez"GeneratorCapClientTest.test_futureŠ   sb   € Ø”×'Ò'¨Ñ0Ô0ˆØŒ×Ò ¨¬	Ñ2Ô2Ð2Ø�	Š	‰ŒˆØ×Ò˜Ÿš™œ¨'Ñ2Ô2Ð2Ð2Ð2r   c                 óä   — | j                              d¦  «        }| j                             || j        ¦  «         |                      ¦   «          |                      t          d|j        ¦  «         d S )Nrk   úalready capitalized)	rb   rP   rl   rm   rf   rn   ÚassertRaisesRegexr;   r   ro   s     r   Útest_future_errorz(GeneratorCapClientTest.test_future_error�   s_   € Ø”×'Ò'¨Ñ0Ô0ˆØŒ×Ò ¨¬	Ñ2Ô2Ð2Ø�	Š	‰ŒˆØ×Ò�xÐ)>ÀÄÑNÔNÐNÐNÐNr   c                 ój   ‡ — t           j        ˆ fd„¦   «         }‰ j                             |¦  «         d S )Nc               3   óp   •K  — ‰j                              d¦  «        V —} ‰                     | d¦  «         d S ri   )rb   rP   r   )r   r   s    €r   Úfz0GeneratorCapClientTest.test_generator.<locals>.f—   s>   øè è € àœ;×1Ò1°'Ñ:Ô:Ð:Ð:ˆFØ×Ò˜V WÑ-Ô-Ð-Ð-Ð-r   ©r
   r9   rl   Úrun_sync©r   rx   s   ` r   Útest_generatorz%GeneratorCapClientTest.test_generator–   sF   ø€ Ý	Œð	.ð 	.ð 	.ð 	.ñ 
Œð	.ð 	Œ×Ò˜aÑ Ô Ð Ð Ð r   c                 ój   ‡ — t           j        ˆ fd„¦   «         }‰ j                             |¦  «         d S )Nc               3   ó¬   •K  — ‰                       t          d¦  «        5  ‰ j                             d¦  «        V — d d d ¦  «         d S # 1 swxY w Y   d S )Nrs   rk   )rt   r;   rb   rP   ©r   s   €r   rx   z6GeneratorCapClientTest.test_generator_error.<locals>.fŸ   sž   øè è € à×'Ò'­Ð2GÑHÔHð 6ð 6Ø”k×,Ò,¨WÑ5Ô5Ð5Ð5Ð5ð6ð 6ð 6ñ 6ô 6ð 6ð 6ð 6ð 6ð 6ð 6ð 6øøøð 6ð 6ð 6ð 6ð 6ð 6s   ŸA	Á	AÁAry   r{   s   ` r   Útest_generator_errorz+GeneratorCapClientTest.test_generator_errorž   sF   ø€ Ý	Œð	6ð 	6ð 	6ð 	6ñ 
Œð	6ð 	Œ×Ò˜aÑ Ô Ð Ð Ð r   )
r    r!   r"   r_   rg   rq   ru   r|   r€   Ú__classcell__)rd   s   @r   r\   r\   ~   s�   ø€ € € € € ð4ð 4ð 4ð 4ð 4ðð ð ð ð ð3ð 3ð 3ðOð Oð Oð!ð !ð !ð!ð !ð !ð !ð !ð !ð !r   r\   c                   óf   — e Zd Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         ZdS )ÚRunOnExecutorTestc              #   ó�   K  —  G d„ d¦  «        } |¦   «         }|                      ¦   «         V —}|                      |d¦  «         d S )Nc                   ó*   — e Zd Zd„ Zed„ ¦   «         ZdS )ú1RunOnExecutorTest.test_no_calling.<locals>.Objectc                 óN   — t           j                             d¦  «        | _        d S ©Né   ©r   ÚthreadÚThreadPoolExecutorÚexecutorr   s    r   rB   z:RunOnExecutorTest.test_no_calling.<locals>.Object.__init__«   ó   € Ý '¤× AÒ AÀ!Ñ DÔ D�”��r   c                 ó   — dS r   r#   r   s    r   rx   z3RunOnExecutorTest.test_no_calling.<locals>.Object.f®   ó   € à�rr   N©r    r!   r"   rB   r   rx   r#   r   r   ÚObjectr†   ª   sA   € € € € € ðEð Eð Eð ðð ñ Œ_ðð ð r   r’   r   ©rx   r   ©r   r’   ÚoÚanswers       r   Útest_no_callingz!RunOnExecutorTest.test_no_calling¨   óh   è è € ð	ð 	ð 	ð 	ð 	ñ 	ô 	ð 	ð ˆF‰HŒHˆØ—s’s‘u”u��ˆØ×Ò˜ Ñ$Ô$Ð$Ð$Ð$r   c              #   ó�   K  —  G d„ d¦  «        } |¦   «         }|                      ¦   «         V —}|                      |d¦  «         d S )Nc                   ó:   — e Zd Zd„ Z e¦   «         d„ ¦   «         ZdS )ú8RunOnExecutorTest.test_call_with_no_args.<locals>.Objectc                 óN   — t           j                             d¦  «        | _        d S rˆ   rŠ   r   s    r   rB   zARunOnExecutorTest.test_call_with_no_args.<locals>.Object.__init__¹   rŽ   r   c                 ó   — dS r   r#   r   s    r   rx   z:RunOnExecutorTest.test_call_with_no_args.<locals>.Object.f¼   r�   r   Nr‘   r#   r   r   r’   r›   ¸   óJ   € € € € € ðEð Eð Eð ˆ_ÑÔðð ñ Ôðð ð r   r’   r   r“   r”   s       r   Útest_call_with_no_argsz(RunOnExecutorTest.test_call_with_no_args¶   r˜   r   c              #   ó�   K  —  G d„ d¦  «        } |¦   «         }|                      ¦   «         V —}|                      |d¦  «         d S )Nc                   ó>   — e Zd Zd„ Z ed¬¦  «        d„ ¦   «         ZdS )ú9RunOnExecutorTest.test_call_with_executor.<locals>.Objectc                 óN   — t           j                             d¦  «        | _        d S rˆ   )r   r‹   rŒ   Ú_Object__executorr   s    r   rB   zBRunOnExecutorTest.test_call_with_executor.<locals>.Object.__init__Ç   s   € Ý")¤.×"CÒ"CÀAÑ"FÔ"F�”��r   r¤   )r�   c                 ó   — dS r   r#   r   s    r   rx   z;RunOnExecutorTest.test_call_with_executor.<locals>.Object.fÊ   r�   r   Nr‘   r#   r   r   r’   r¢   Æ   sP   € € € € € ðGð Gð Gð ˆ_Ð&9Ð:Ñ:Ô:ðð ñ ;Ô:ðð ð r   r’   r   r“   r”   s       r   Útest_call_with_executorz)RunOnExecutorTest.test_call_with_executorÄ   r˜   r   c              #   óˆ   ‡K  —  G d„ d¦  «        } |¦   «         Šˆfd„} |¦   «         V —}|                       |d¦  «         d S )Nc                   ó:   — e Zd Zd„ Z e¦   «         d„ ¦   «         ZdS )ú2RunOnExecutorTest.test_async_await.<locals>.Objectc                 óN   — t           j                             d¦  «        | _        d S rˆ   rŠ   r   s    r   rB   z;RunOnExecutorTest.test_async_await.<locals>.Object.__init__Õ   rŽ   r   c                 ó   — dS r   r#   r   s    r   rx   z4RunOnExecutorTest.test_async_await.<locals>.Object.fØ   r�   r   Nr‘   r#   r   r   r’   r©   Ô   rž   r   r’   c               “   ó@   •K  — ‰                      ¦   «         ƒ d {V —†} | S r?   )rx   )r–   r•   s    €r   rx   z-RunOnExecutorTest.test_async_await.<locals>.fÞ   s%   øè è € ØŸ3š3™5œ5�[�[�[�[�[�[ˆFØˆMr   r   )r   )r   r’   rx   r   r•   s       @r   Útest_async_awaitz"RunOnExecutorTest.test_async_awaitÒ   s‚   øè è € ð	ð 	ð 	ð 	ð 	ñ 	ô 	ð 	ð ˆF‰HŒHˆð	ð 	ð 	ð 	ð 	ð �q‘s”s��ˆØ×Ò˜ Ñ$Ô$Ð$Ð$Ð$r   N)r    r!   r"   r   r—   rŸ   r¦   r­   r#   r   r   rƒ   rƒ   §   s~   € € € € € Øð%ð %ñ „Xð%ð ð%ð %ñ „Xð%ð ð%ð %ñ „Xð%ð ð%ð %ñ „Xð%ð %ð %r   rƒ   Ú__main__)#Ú
concurrentr   rU   rE   rW   ÚunittestÚtornado.concurrentr   r   r   r   Útornado.escaper   r	   Útornador
   Útornado.iostreamr   Útornado.tcpserverr   Útornado.testingr   r   r   r   r%   r.   rG   r;   r=   rN   r\   rƒ   r    Úmainr#   r   r   ú<module>r¸      s]  ðð Ð Ð Ð Ð Ð Ø €€€Ø 	€	€	€	Ø €€€Ø €€€ðð ð ð ð ð ð ð ð ð ð ð ð ,Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ø Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ Eð/ð /ð /ð /ð /�]ñ /ô /ð /ð %ð %ð %ð %ð %�mñ %ô %ð %ð:
ð 
ð 
ð 
ð 
�	ñ 
ô 
ð 
ð	ð 	ð 	ð 	ð 	ˆyñ 	ô 	ð 	ð$ð $ð $ð $ð $ñ $ô $ð $ð6ð 6ð 6ð 6ð 6˜ñ 6ô 6ð 6ð&!ð &!ð &!ð &!ð &!˜]ñ &!ô &!ð &!ðR<%ð <%ð <%ð <%ð <%˜ñ <%ô <%ð <%ð~ ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   