def test_io_shutdown_with_io_error(self): connection = FakeConnection() io = IO(connection.parameters) io._exceptions = [] io.socket = mock.Mock(name='socket', spec=socket.socket) io.socket.shutdown.side_effect = OSError() io._close_socket()
def test_io_simple_send_with_io_error(self): connection = FakeConnection() io = IO(connection.parameters) io._exceptions = [] io.socket = None io.write_to_socket(self.message) self.assertTrue(io._exceptions)
def test_io_simple_send_with_error(self): connection = FakeConnection() io = IO(connection.parameters) io._exceptions = [] io.socket = mock.Mock(name='socket', spec=socket.socket) io.socket.send.side_effect = socket.error('error') io.write_to_socket(self.message) self.assertIsInstance(io._exceptions[0], AMQPConnectionError)
def test_io_receive_raises_socket_error(self): connection = FakeConnection() io = IO(connection.parameters) io._exceptions = [] io.socket = MagicMock(name='socket', spec=socket.socket) io.socket.recv.side_effect = socket.error('error') io._receive() self.assertIsInstance(io._exceptions[0], AMQPConnectionError)
def test_io_simple_send_with_error(self): connection = FakeConnection() io = IO(connection.parameters) io._exceptions = [] io.socket = MagicMock(name='socket', spec=socket.socket) io.poller = MagicMock(name='poller', spec=amqpstorm.io.Poller) io.socket.send.side_effect = socket.error('error') io.write_to_socket('12345') self.assertIsInstance(io._exceptions[0], AMQPConnectionError)
def test_io_simple_send_zero_bytes_sent(self): connection = FakeConnection() io = IO(connection.parameters) io._exceptions = [] io.socket = MagicMock(name='socket', spec=socket.socket) io.poller = MagicMock(name='poller', spec=amqpstorm.io.Poller) io.socket.send.return_value = 0 io.write_to_socket('afasffa') self.assertIsInstance(io._exceptions[0], AMQPConnectionError)
def test_io_simple_send_with_timeout_error(self): connection = FakeConnection() self.raised = False def custom_raise(*_): if self.raised: return 1 self.raised = True raise socket.timeout() io = IO(connection.parameters) io._exceptions = [] io.socket = mock.Mock(name='socket', spec=socket.socket) io.socket.send.side_effect = custom_raise io.write_to_socket(self.message) self.assertTrue(self.raised) self.assertFalse(io._exceptions)
def test_io_simple_send_with_timeout_error(self): connection = FakeConnection() self.raised = False def custom_raise(*args, **kwargs): if self.raised: return 1 self.raised = True raise socket.timeout() io = IO(connection.parameters) io._exceptions = [] io.socket = MagicMock(name='socket', spec=socket.socket) io.poller = MagicMock(name='poller', spec=amqpstorm.io.Poller) io.socket.send.side_effect = custom_raise io.write_to_socket('12345') self.assertTrue(self.raised) self.assertFalse(io._exceptions)