@@ -313,29 +313,29 @@ def test_handle_connect_namespace(self, eio):
313
313
s .eio .send .mock .assert_any_call ('123' , '0/foo' , binary = False )
314
314
315
315
def test_handle_connect_rejected (self , eio ):
316
- eio .return_value .send = AsyncMock ()
317
316
mgr = self ._get_mock_manager ()
318
317
s = asyncio_server .AsyncServer (client_manager = mgr )
319
318
handler = mock .MagicMock (return_value = False )
320
319
s .on ('connect' , handler )
321
- _run (s ._handle_eio_connect ('123' , 'environ' ))
320
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
321
+ self .assertFalse (ret )
322
322
handler .assert_called_once_with ('123' , 'environ' )
323
323
self .assertEqual (s .manager .connect .call_count , 1 )
324
324
self .assertEqual (s .manager .disconnect .call_count , 1 )
325
325
self .assertEqual (s .environ , {})
326
- s .eio .send .mock .assert_called_once_with ('123' , '4' , binary = False )
327
326
328
327
def test_handle_connect_namespace_rejected (self , eio ):
329
328
eio .return_value .send = AsyncMock ()
330
329
mgr = self ._get_mock_manager ()
331
330
s = asyncio_server .AsyncServer (client_manager = mgr )
332
331
handler = mock .MagicMock (return_value = False )
333
332
s .on ('connect' , handler , namespace = '/foo' )
334
- _run (s ._handle_eio_connect ('123' , 'environ' ))
333
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
335
334
_run (s ._handle_eio_message ('123' , '0/foo' ))
335
+ self .assertIsNone (ret )
336
336
self .assertEqual (s .manager .connect .call_count , 2 )
337
337
self .assertEqual (s .manager .disconnect .call_count , 1 )
338
- self .assertEqual (s .environ , {})
338
+ self .assertEqual (s .environ , {'123' : 'environ' })
339
339
s .eio .send .mock .assert_any_call ('123' , '4/foo' , binary = False )
340
340
341
341
def test_handle_connect_rejected_always_connect (self , eio ):
@@ -345,7 +345,8 @@ def test_handle_connect_rejected_always_connect(self, eio):
345
345
always_connect = True )
346
346
handler = mock .MagicMock (return_value = False )
347
347
s .on ('connect' , handler )
348
- _run (s ._handle_eio_connect ('123' , 'environ' ))
348
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
349
+ self .assertFalse (ret )
349
350
handler .assert_called_once_with ('123' , 'environ' )
350
351
self .assertEqual (s .manager .connect .call_count , 1 )
351
352
self .assertEqual (s .manager .disconnect .call_count , 1 )
@@ -360,11 +361,12 @@ def test_handle_connect_namespace_rejected_always_connect(self, eio):
360
361
always_connect = True )
361
362
handler = mock .MagicMock (return_value = False )
362
363
s .on ('connect' , handler , namespace = '/foo' )
363
- _run (s ._handle_eio_connect ('123' , 'environ' ))
364
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
364
365
_run (s ._handle_eio_message ('123' , '0/foo' ))
366
+ self .assertFalse (ret )
365
367
self .assertEqual (s .manager .connect .call_count , 2 )
366
368
self .assertEqual (s .manager .disconnect .call_count , 1 )
367
- self .assertEqual (s .environ , {})
369
+ self .assertEqual (s .environ , {'123' : 'environ' })
368
370
s .eio .send .mock .assert_any_call ('123' , '0/foo' , binary = False )
369
371
s .eio .send .mock .assert_any_call ('123' , '1/foo' , binary = False )
370
372
@@ -375,11 +377,24 @@ def test_handle_connect_rejected_with_exception(self, eio):
375
377
handler = mock .MagicMock (
376
378
side_effect = exceptions .ConnectionRefusedError ('fail_reason' ))
377
379
s .on ('connect' , handler )
378
- _run (s ._handle_eio_connect ('123' , 'environ' ))
380
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
381
+ self .assertEqual (ret , 'fail_reason' )
382
+ self .assertEqual (s .manager .connect .call_count , 1 )
383
+ self .assertEqual (s .manager .disconnect .call_count , 1 )
384
+ self .assertEqual (s .environ , {})
385
+
386
+ def test_handle_connect_rejected_with_empty_exception (self , eio ):
387
+ eio .return_value .send = AsyncMock ()
388
+ mgr = self ._get_mock_manager ()
389
+ s = asyncio_server .AsyncServer (client_manager = mgr )
390
+ handler = mock .MagicMock (
391
+ side_effect = exceptions .ConnectionRefusedError ())
392
+ s .on ('connect' , handler )
393
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
394
+ self .assertFalse (ret )
379
395
self .assertEqual (s .manager .connect .call_count , 1 )
380
396
self .assertEqual (s .manager .disconnect .call_count , 1 )
381
397
self .assertEqual (s .environ , {})
382
- s .eio .send .mock .assert_any_call ('123' , '4"fail_reason"' , binary = False )
383
398
384
399
def test_handle_connect_namespace_rejected_with_exception (self , eio ):
385
400
eio .return_value .send = AsyncMock ()
@@ -388,14 +403,30 @@ def test_handle_connect_namespace_rejected_with_exception(self, eio):
388
403
handler = mock .MagicMock (
389
404
side_effect = exceptions .ConnectionRefusedError ('fail_reason' , 1 ))
390
405
s .on ('connect' , handler , namespace = '/foo' )
391
- _run (s ._handle_eio_connect ('123' , 'environ' ))
406
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
392
407
_run (s ._handle_eio_message ('123' , '0/foo' ))
408
+ self .assertIsNone (ret )
393
409
self .assertEqual (s .manager .connect .call_count , 2 )
394
410
self .assertEqual (s .manager .disconnect .call_count , 1 )
395
- self .assertEqual (s .environ , {})
411
+ self .assertEqual (s .environ , {'123' : 'environ' })
396
412
s .eio .send .mock .assert_any_call ('123' , '4/foo,["fail_reason",1]' ,
397
413
binary = False )
398
414
415
+ def test_handle_connect_namespace_rejected_with_empty_exception (self , eio ):
416
+ eio .return_value .send = AsyncMock ()
417
+ mgr = self ._get_mock_manager ()
418
+ s = asyncio_server .AsyncServer (client_manager = mgr )
419
+ handler = mock .MagicMock (
420
+ side_effect = exceptions .ConnectionRefusedError ())
421
+ s .on ('connect' , handler , namespace = '/foo' )
422
+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
423
+ _run (s ._handle_eio_message ('123' , '0/foo' ))
424
+ self .assertIsNone (ret )
425
+ self .assertEqual (s .manager .connect .call_count , 2 )
426
+ self .assertEqual (s .manager .disconnect .call_count , 1 )
427
+ self .assertEqual (s .environ , {'123' : 'environ' })
428
+ s .eio .send .mock .assert_any_call ('123' , '4/foo' , binary = False )
429
+
399
430
def test_handle_disconnect (self , eio ):
400
431
eio .return_value .send = AsyncMock ()
401
432
mgr = self ._get_mock_manager ()
0 commit comments