@@ -551,24 +551,50 @@ def test_handle_ack_not_found(self):
551551 def test_handle_error (self ):
552552 c = asyncio_client .AsyncClient ()
553553 c .connected = True
554+ c ._trigger_event = AsyncMock ()
555+ c .namespaces = ['/foo' , '/bar' ]
556+ _run (c ._handle_error ('/' , 'error' ))
557+ self .assertEqual (c .namespaces , [])
558+ self .assertFalse (c .connected )
559+ c ._trigger_event .mock .assert_called_once_with ('connect_error' , '/' ,
560+ 'error' )
561+
562+ def test_handle_error_with_no_arguments (self ):
563+ c = asyncio_client .AsyncClient ()
564+ c .connected = True
565+ c ._trigger_event = AsyncMock ()
554566 c .namespaces = ['/foo' , '/bar' ]
555- c ._handle_error ('/' )
567+ _run ( c ._handle_error ('/' , None ) )
556568 self .assertEqual (c .namespaces , [])
557569 self .assertFalse (c .connected )
570+ c ._trigger_event .mock .assert_called_once_with ('connect_error' , '/' )
558571
559572 def test_handle_error_namespace (self ):
560573 c = asyncio_client .AsyncClient ()
561574 c .connected = True
562575 c .namespaces = ['/foo' , '/bar' ]
563- c ._handle_error ('/bar' )
576+ c ._trigger_event = AsyncMock ()
577+ _run (c ._handle_error ('/bar' , ['error' , 'message' ]))
578+ self .assertEqual (c .namespaces , ['/foo' ])
579+ self .assertTrue (c .connected )
580+ c ._trigger_event .mock .assert_called_once_with ('connect_error' , '/bar' ,
581+ 'error' , 'message' )
582+
583+ def test_handle_error_namespace_with_no_arguments (self ):
584+ c = asyncio_client .AsyncClient ()
585+ c .connected = True
586+ c .namespaces = ['/foo' , '/bar' ]
587+ c ._trigger_event = AsyncMock ()
588+ _run (c ._handle_error ('/bar' , None ))
564589 self .assertEqual (c .namespaces , ['/foo' ])
565590 self .assertTrue (c .connected )
591+ c ._trigger_event .mock .assert_called_once_with ('connect_error' , '/bar' )
566592
567593 def test_handle_error_unknown_namespace (self ):
568594 c = asyncio_client .AsyncClient ()
569595 c .connected = True
570596 c .namespaces = ['/foo' , '/bar' ]
571- c ._handle_error ('/baz' )
597+ _run ( c ._handle_error ('/baz' , 'error' ) )
572598 self .assertEqual (c .namespaces , ['/foo' , '/bar' ])
573599 self .assertTrue (c .connected )
574600
@@ -685,7 +711,7 @@ def test_handle_eio_message(self):
685711 c ._handle_disconnect = AsyncMock ()
686712 c ._handle_event = AsyncMock ()
687713 c ._handle_ack = AsyncMock ()
688- c ._handle_error = mock . MagicMock ()
714+ c ._handle_error = AsyncMock ()
689715
690716 _run (c ._handle_eio_message ('0' ))
691717 c ._handle_connect .mock .assert_called_with (None )
@@ -700,9 +726,15 @@ def test_handle_eio_message(self):
700726 _run (c ._handle_eio_message ('3/foo,["bar"]' ))
701727 c ._handle_ack .mock .assert_called_with ('/foo' , None , ['bar' ])
702728 _run (c ._handle_eio_message ('4' ))
703- c ._handle_error .assert_called_with (None )
729+ c ._handle_error .mock .assert_called_with (None , None )
730+ _run (c ._handle_eio_message ('4"foo"' ))
731+ c ._handle_error .mock .assert_called_with (None , 'foo' )
732+ _run (c ._handle_eio_message ('4["foo"]' ))
733+ c ._handle_error .mock .assert_called_with (None , ['foo' ])
704734 _run (c ._handle_eio_message ('4/foo' ))
705- c ._handle_error .assert_called_with ('/foo' )
735+ c ._handle_error .mock .assert_called_with ('/foo' , None )
736+ _run (c ._handle_eio_message ('4/foo,["foo","bar"]' ))
737+ c ._handle_error .mock .assert_called_with ('/foo' , ['foo' , 'bar' ])
706738 _run (c ._handle_eio_message ('51-{"_placeholder":true,"num":0}' ))
707739 self .assertEqual (c ._binary_packet .packet_type , packet .BINARY_EVENT )
708740 _run (c ._handle_eio_message (b'foo' ))
0 commit comments