
    af                        d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d Zej	        
                    e j                            dd           d          ej	        j        d	                         Zej	        
                    e j                            dd           d          d
             Zej	        
                    e j                            dd           d          ej	        j        d                         ZdS )    N)Mock)WebSocketServerFactoryc                 >   K   t          j        |           d {V  | S Nasynciosleep)whatwhens     Z/var/www/html/env/lib/python3.11/site-packages/autobahn/asyncio/test/test_aio_websocket.py
echo_asyncr      s-      
-

K    USE_ASYNCIOFztest runs on asyncio only)reasonc                  B   K   dt          dd           d {V k    sJ d S )NzHello!r   )r    r   r   test_echo_asyncr      s;       Z!44444444444444r   c                     t          |           } |            }t                      }|                    |           d S )N)loop)r   r   connection_made)
event_loopfactoryserver	transports       r   test_websocket_custom_loopr      s@    $*555GWYYFI
9%%%%%r   c                   K   dt          j                    g d fd}t                      } |            }||_        t	                      }|                    |           d                    g d          |_        |                                  d {V  t                    dk    sJ d         z  k    sJ d S )N*   c                 D   K   t          j        d           d {V  | | z  S )N   r   )xs    r   fooz)test_async_on_connect_server.<locals>.foo)   s1      mA1ur   c                    K               d {V }                     |           t          j        |            d S r   )appendtxaioresolve)reqvdoner!   numvaluess     r   
on_connectz0test_async_on_connect_server.<locals>.on_connect-   sJ      #c((NNNNNNadC     r      
)	s   GET /ws HTTP/1.1s   Host: www.example.coms   Sec-WebSocket-Version: 13s,   Origin: http://www.example.com.malicious.coms,   Sec-WebSocket-Extensions: permessage-deflates+   Sec-WebSocket-Key: tXAxWFUqnhi86Ajj7dRY5g==s   Connection: keep-alive, Upgrades   Upgrade: websocketr,   r   r   )
r$   create_futurer   	onConnectr   r   joindataprocessHandshakelen)	r   r+   r   r   r   r(   r!   r)   r*   s	        @@@@r   test_async_on_connect_serverr3   !   s      C  DF  ! ! ! ! ! ! ! !
 %&&GWYYF!FI
9%%%,, 
  
  
  
 
FK 
JJJJJJJv;;!!9c	!!!!!!r   )osr   pytestr$   unittest.mockr   autobahn.asyncio.websocketr   r   markskipifenvirongetr   r   r3   r   r   r   <module>r<      sZ   				          = = = = = =  
 
}e<<<E`aa5 5  ba5
 
}e<<<E`aa& & ba& 
}e<<<E`aa$" $"  ba$" $" $"r   