o
    >h                     @   sb   d dl mZ d dlmZmZ d dlmZmZ d dlm	Z	 d dl
mZ dd ZG dd	 d	e	jZd
S )    )reactor)patchMock)inlineCallbackssucceed)unittest)ApplicationRunnerc                  O   s   t d)Nwe always fail)RuntimeError)argskw r   /var/www/vedio/testing/chatpythonscript.ninositsolution.com/env/lib/python3.10/site-packages/autobahn/twisted/test/test_tx_application_runner.pyraise_error&   s   r   c                   @   s`   e Zd Zeddd Zededd Zeddd Zeddd	 Zedd
d Z	dS )TestApplicationRunnerztwisted.internet.reactorc                 C   sJ   t td|_tdd}| t|jt | |jjd | |j	jd d S )Nside_effectws://fake:1234/wsdummy realm   )
r   r   
connectTCPr   assertRaisesr
   runassertEqual
call_countstop)selffakereactorrunnerr   r   r   test_runner_default+   s
   
z)TestApplicationRunner.test_runner_defaultc              
   c   s    t td|_tdd}z|jtddV  |   W n ty5 } z| |jd d W Y d }~nd }~ww | |jj	d | |j
j	d d S )Nr   r   r   Fstart_reactorr   r	   )r   r   r   r   r   failr
   r   r   r   r   )r   r   r   er   r   r   test_runner_no_run7   s   
z(TestApplicationRunner.test_runner_no_runc                 C   sr   t  }t t|d|_tdd}|jt  dd}| |j | dt|j	 | |jj
d | |jj
d d S )Nreturn_valuer   r   Fr    r   r   r   r   r   r   r   assertFalsecalledr   len	callbacksr   r   )r   r   protor   dr   r   r   test_runner_no_run_happypathJ   s   
z2TestApplicationRunner.test_runner_no_run_happypathc                 C   s   d}| j ttdd|d d S )Nmyproxyr   r   proxy)r   AssertionErrorr   )r   r   r1   r   r   r   test_runner_bad_proxy]   s   
z+TestApplicationRunner.test_runner_bad_proxyc                 C   s   t  }t t|d|_ddd}tdd|d}|jt  dd	}| |j | d
t|j	 | |jj
d | |jj
d d S )Nr%   r/   i8  )hostportr   r   r0   Fr    r   r   r'   )r   r   r,   r1   r   r-   r   r   r   test_runner_proxyh   s   
z'TestApplicationRunner.test_runner_proxyN)
__name__
__module____qualname__r   r   r   r$   r.   r3   r6   r   r   r   r   r   *   s    



r   N)twisted.internetr   unittest.mockr   r   twisted.internet.deferr   r   twisted.trialr   autobahn.twisted.wampr   r   TestCaser   r   r   r   r   <module>   s   