44import sys
55import pathlib
66import ssl
7+ import socket
78
89import picows
910import pytest
@@ -94,12 +95,11 @@ def __init__(self, server):
9495 self .server_task = asyncio .create_task (server .serve_forever ())
9596
9697 async def __aenter__ (self ):
97- return self .server
98+ return await self .server . __aenter__ ()
9899
99- async def __aexit__ (self , exc_type , exc_val , exc_tb ):
100- self .server .close ()
101- await self .server .wait_closed ()
100+ async def __aexit__ (self , * exc ):
102101 self .server_task .cancel ()
102+ await self .server .__aexit__ (* exc )
103103 with pytest .raises (asyncio .CancelledError ):
104104 async with async_timeout .timeout (TIMEOUT ):
105105 await self .server_task
@@ -249,7 +249,7 @@ async def test_server_handshake_timeout():
249249 assert client_reader .at_eof ()
250250
251251
252- @pytest .mark .parametrize ("request_path" , ["/v1/ws?key=blablabla&data=fhhh " , "/v1/ws" ])
252+ @pytest .mark .parametrize ("request_path" , ["/v1/ws" , "/v1/ws?key=blablabla&data=fhhh " ])
253253async def test_request_path_and_params (request_path ):
254254 def listener_factory (request : picows .WSUpgradeRequest ):
255255 assert request .method == b"GET"
@@ -262,7 +262,8 @@ def listener_factory(request: picows.WSUpgradeRequest):
262262 "127.0.0.1" , 0 , websocket_handshake_timeout = 0.1 )
263263 async with ServerAsyncContext (server ):
264264 url = f"ws://127.0.0.1:{ server .sockets [0 ].getsockname ()[1 ]} { request_path } "
265- (_ , client ) = await picows .ws_connect (picows .WSListener , url )
265+ (transport , _ ) = await picows .ws_connect (picows .WSListener , url )
266+ transport .disconnect ()
266267
267268
268269async def test_route_not_found ():
0 commit comments