@@ -313,29 +313,29 @@ def test_handle_connect_namespace(self, eio):
313313 s .eio .send .mock .assert_any_call ('123' , '0/foo' , binary = False )
314314
315315 def test_handle_connect_rejected (self , eio ):
316- eio .return_value .send = AsyncMock ()
317316 mgr = self ._get_mock_manager ()
318317 s = asyncio_server .AsyncServer (client_manager = mgr )
319318 handler = mock .MagicMock (return_value = False )
320319 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 )
322322 handler .assert_called_once_with ('123' , 'environ' )
323323 self .assertEqual (s .manager .connect .call_count , 1 )
324324 self .assertEqual (s .manager .disconnect .call_count , 1 )
325325 self .assertEqual (s .environ , {})
326- s .eio .send .mock .assert_called_once_with ('123' , '4' , binary = False )
327326
328327 def test_handle_connect_namespace_rejected (self , eio ):
329328 eio .return_value .send = AsyncMock ()
330329 mgr = self ._get_mock_manager ()
331330 s = asyncio_server .AsyncServer (client_manager = mgr )
332331 handler = mock .MagicMock (return_value = False )
333332 s .on ('connect' , handler , namespace = '/foo' )
334- _run (s ._handle_eio_connect ('123' , 'environ' ))
333+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
335334 _run (s ._handle_eio_message ('123' , '0/foo' ))
335+ self .assertIsNone (ret )
336336 self .assertEqual (s .manager .connect .call_count , 2 )
337337 self .assertEqual (s .manager .disconnect .call_count , 1 )
338- self .assertEqual (s .environ , {})
338+ self .assertEqual (s .environ , {'123' : 'environ' })
339339 s .eio .send .mock .assert_any_call ('123' , '4/foo' , binary = False )
340340
341341 def test_handle_connect_rejected_always_connect (self , eio ):
@@ -345,7 +345,8 @@ def test_handle_connect_rejected_always_connect(self, eio):
345345 always_connect = True )
346346 handler = mock .MagicMock (return_value = False )
347347 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 )
349350 handler .assert_called_once_with ('123' , 'environ' )
350351 self .assertEqual (s .manager .connect .call_count , 1 )
351352 self .assertEqual (s .manager .disconnect .call_count , 1 )
@@ -360,11 +361,12 @@ def test_handle_connect_namespace_rejected_always_connect(self, eio):
360361 always_connect = True )
361362 handler = mock .MagicMock (return_value = False )
362363 s .on ('connect' , handler , namespace = '/foo' )
363- _run (s ._handle_eio_connect ('123' , 'environ' ))
364+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
364365 _run (s ._handle_eio_message ('123' , '0/foo' ))
366+ self .assertFalse (ret )
365367 self .assertEqual (s .manager .connect .call_count , 2 )
366368 self .assertEqual (s .manager .disconnect .call_count , 1 )
367- self .assertEqual (s .environ , {})
369+ self .assertEqual (s .environ , {'123' : 'environ' })
368370 s .eio .send .mock .assert_any_call ('123' , '0/foo' , binary = False )
369371 s .eio .send .mock .assert_any_call ('123' , '1/foo' , binary = False )
370372
@@ -375,11 +377,24 @@ def test_handle_connect_rejected_with_exception(self, eio):
375377 handler = mock .MagicMock (
376378 side_effect = exceptions .ConnectionRefusedError ('fail_reason' ))
377379 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 )
379395 self .assertEqual (s .manager .connect .call_count , 1 )
380396 self .assertEqual (s .manager .disconnect .call_count , 1 )
381397 self .assertEqual (s .environ , {})
382- s .eio .send .mock .assert_any_call ('123' , '4"fail_reason"' , binary = False )
383398
384399 def test_handle_connect_namespace_rejected_with_exception (self , eio ):
385400 eio .return_value .send = AsyncMock ()
@@ -388,14 +403,30 @@ def test_handle_connect_namespace_rejected_with_exception(self, eio):
388403 handler = mock .MagicMock (
389404 side_effect = exceptions .ConnectionRefusedError ('fail_reason' , 1 ))
390405 s .on ('connect' , handler , namespace = '/foo' )
391- _run (s ._handle_eio_connect ('123' , 'environ' ))
406+ ret = _run (s ._handle_eio_connect ('123' , 'environ' ))
392407 _run (s ._handle_eio_message ('123' , '0/foo' ))
408+ self .assertIsNone (ret )
393409 self .assertEqual (s .manager .connect .call_count , 2 )
394410 self .assertEqual (s .manager .disconnect .call_count , 1 )
395- self .assertEqual (s .environ , {})
411+ self .assertEqual (s .environ , {'123' : 'environ' })
396412 s .eio .send .mock .assert_any_call ('123' , '4/foo,["fail_reason",1]' ,
397413 binary = False )
398414
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+
399430 def test_handle_disconnect (self , eio ):
400431 eio .return_value .send = AsyncMock ()
401432 mgr = self ._get_mock_manager ()
0 commit comments