
    hT                         d dl Z d dlmZ d dlmZ d dlmZ  ee       G d de             Z G d de j                        Z
y)	    N)patch)implementer)IReactorTimec                   2    e Zd ZdZdZd Zd Zd Zd Zd Z	y)	FakeReactorzH
    This just fakes out enough reactor methods so .run() can work.
    Fc                 .    d| _         || _        g | _        y )NF)stop_calledto_raisedelayed)selfr
   s     b/var/www/Befach/backend/env/lib/python3.12/site-packages/autobahn/twisted/test/test_wamp_runner.py__init__zFakeReactor.__init__)   s          c                     | j                   N)r
   r   argskws      r   runzFakeReactor.run.   s    mmr   c                     d| _         y )NT)r	   )r   s    r   stopzFakeReactor.stop1   s
    r   c                 B    | j                   j                  ||||f       y r   )r   append)r   delayfuncr   kwargss        r   	callLaterzFakeReactor.callLater4   s    UD$78r   c                     t        d      )NzConnectTCP shouldn't get called)RuntimeErrorr   s      r   
connectTCPzFakeReactor.connectTCP7   s    <==r   N)
__name__
__module____qualname____doc__r	   r   r   r   r   r     r   r   r   r   "   s'     K
 9>r   r   c                   T    e Zd Z ed       ed       ed      d                      Zy)TestWampTwistedRunnerztxaio.use_twistedztxaio.start_loggingztxaio.configc                 Z   	 ddl m} ddlm} ddlm}  |dd      } |d      }t        d	t        |            5 }| j                  ||j                  d
 d       | j                  |j                         ddd       y# t        $ r t        j                  d      w xY w# 1 sw Y   yxY w)zz
        Ensure the runner doesn't swallow errors and that it exits the
        reactor properly if there is one.
        r   )ApplicationRunner)ConnectionRefusedError)reactorz
No twistedzws://localhost:1realmzIt's a trap!ztwisted.internet.reactorc                      y r   r%   )_s    r   <lambda>z:TestWampTwistedRunner.test_connect_error.<locals>.<lambda>X   s    dr   T)start_reactorN)autobahn.twisted.wampr)   twisted.internet.errorr*   twisted.internetr+   ImportErrorunittestSkipTestr   r   assertRaisesr   
assertTruer	   )r   r   r)   r*   r+   runner	exceptionmockreactors           r   test_connect_errorz(TestWampTwistedRunner.test_connect_errorA   s    	2?E0 ##5w?*>:	-{9/EF 	5+&

N$  
 OOK334	5 	5  	2##L11	2	5 	5s   A? <B!?B!B*N)r!   r"   r#   r   r<   r%   r   r   r'   r'   ;   s7     
 !
>5  "  5r   r'   )r5   unittest.mockr   zope.interfacer   twisted.internet.interfacesr   objectr   TestCaser'   r%   r   r   <module>rB      sE   6   & 4 \>& > >05H-- 5r   