
    j	                       d dl mZ d dlZd dlZd dlZd dlmZ d dlm	Z	 d dl
mZ d dlZ ee      j                  Zej                   j#                  dedz        Zerej&                  sJ ej                   j)                  e      Zeej,                  ej.                  <   ej&                  j1                  e        G d d	      Zd
 Zd Zd Zd Zy)    )annotationsN)Path)SimpleNamespace)Anytransport_probeztelegram_transport_probe.pyc                  F    e Zd Zej                  df	 	 	 ddZd Zd Zd Zy)FakeBotNc                .    || _         || _        g | _        y N)usernamefailurecalls)selfr   r   s      r.omo/evidence/task26/task26-continuous-lifecycle-observer-st_01a007da-v2-e788f5d5/test_telegram_transport_probe.py__init__zFakeBot.__init__   s     ! "
    c                D   K   | j                   j                  d       | S w)Nenterr   appendr   s    r   
__aenter__zFakeBot.__aenter__   s     

'"s    c                B   K   | j                   j                  d       y w)Nexitr   )r   _argss     r   	__aexit__zFakeBot.__aexit__"   s     

&!s   c                   K   | j                   j                  d       | j                  r| j                  t        | j                        S w)Nget_me)r   )r   r   r   r   r   r   s    r   r   zFakeBot.get_me%   s8     

(#<<,,66s   A
A)r   strr   zException | None)	__name__
__module____qualname__mEXPECTED_BOTr   r   r   r    r   r   r	   r	      s/    nn$##7G#"7r   r	   c            	         t               t        j                  t        j	                  dfd            } j
                  g dk(  sJ | ddt        j                  dddddk(  sJ y )	Nsecretc                    S r   r%   _tokenbots    r   <lambda>zItest_gate_calls_only_get_me_and_returns_bound_readiness.<locals>.<lambda>.   s    sr   r   r   r   z&task26-telegram-transport-readiness-v1READY_TELEGRAM_TRANSPORTz
Bot.get_meF)schemastatus	successormethodconsumes_updatesmutates_cursorwrites_state)r	   asynciorunr#   
getme_gater   	SUCCESSOR)resultr+   s    @r   7test_gate_calls_only_get_me_and_returns_bound_readinessr;   ,   sg    
)C[[h0BCDF993333:,[[!   r   c                      t        t        d             t        j                  t        j
                  d      5  t        j                  t        j                  d fd             d d d        y # 1 sw Y   y xY w)NzBad Gateway)r   ztransport failurematchr'   c                    S r   r%   r)   s    r   r,   zPtest_gate_fails_closed_on_bad_gateway_or_other_transport_error.<locals>.<lambda>>       #r   )	r	   RuntimeErrorpytestraisesr#   ProbeFailurer6   r7   r8   )r+   s   @r   >test_gate_fails_closed_on_bad_gateway_or_other_transport_errorrE   ;   sJ    
,}5
6C	q~~-@	AALL+=>? 
B	A	As   -A22A;c                 (    G d dt               }  |        t        j                  t        j                  d      5  t        j                  t        j                  dfdd             d d d        j                  g d	k(  sJ y # 1 sw Y   xY w)
Nc                      e Zd ZddZy)Ktest_gate_fails_closed_on_timeout_without_polling_or_sleep.<locals>.SlowBotc                   K   | j                   j                  d       t        j                         j	                          d {    y 7 w)Nr   )r   r   r6   Eventwaitr   s    r   r   zRtest_gate_fails_closed_on_timeout_without_polling_or_sleep.<locals>.SlowBot.get_meC   s0     JJh'--/&&(((s   AAA	AN)returnr   )r    r!   r"   r   r%   r   r   SlowBotrH   B   s    	)r   rM   timeoutr=   r'   c                    S r   r%   r)   s    r   r,   zLtest_gate_fails_closed_on_timeout_without_polling_or_sleep.<locals>.<lambda>I   r@   r   g{Gz?)rN   r-   )	r	   rB   rC   r#   rD   r6   r7   r8   r   )rM   r+   s    @r   :test_gate_fails_closed_on_timeout_without_polling_or_sleeprP   A   sg    )' )
 )C	q~~Y	7ALL+=tLLM 
8993333 
8	7s   /BBc                    t        j                  t        j                  d      5  t	        j
                  t        j                  dd              d d d        t        j                  t        j                  d      5  t	        j
                  t        j                  dd              d d d        y # 1 sw Y   bxY w# 1 sw Y   y xY w)Nztoken unavailabler=    c                    t               S r   r	   r*   s    r   r,   zFtest_gate_rejects_empty_token_and_wrong_bot_identity.<locals>.<lambda>O   s    GIr   zidentity mismatchr'   c                    t        d      S )N	other_botrT   rU   s    r   r,   zFtest_gate_rejects_empty_token_and_wrong_bot_identity.<locals>.<lambda>Q   s	    '+:Nr   )rB   rC   r#   rD   r6   r7   r8   r%   r   r   4test_gate_rejects_empty_token_and_wrong_bot_identityrX   M   sx    	q~~-@	AALL%=>? 
B	q~~-@	AALL+NOP 
B	A 
B	A	A	As   +B2>+B>2B;>C)
__future__r   r6   importlib.util	importlibsyspathlibr   typesr   typingr   rB   __file__parentHEREutilspec_from_file_locationSPECloadermodule_from_specr#   modulesnameexec_moduler	   r;   rE   rP   rX   r%   r   r   <module>rk      s    "   
  !  H~~~--t;;  NN##D)DII     7 7,@	4Qr   