def test_401(self): self.client_mock.get_queues.side_effect = HTTPError('', status=401) with self.assertRaises(RabbitCritical) as excinfo: get_queues(self.client_mock, self.vhost_mock) self.assertEqual(excinfo.exception.errors, {'all': ['Unauthorized.']}) self.client_mock.get_queues.assert_called_once_with(self.vhost_mock)
def test_unknown_error(self): self.client_mock.get_queues.side_effect = HTTPError('', status=500) with self.assertRaises(RabbitCritical) as excinfo: get_queues(self.client_mock, self.vhost_mock) self.assertEqual(excinfo.exception.errors, {'all': ['Unhandled HTTP error, status: 500']}) self.client_mock.get_queues.assert_called_once_with(self.vhost_mock)
def test_unknown_error(self): queues = {'foo': self.thresholds} client_mock = Mock() client_mock.get_queue_depth.side_effect = HTTPError('', status=500) stats, errors = check_lengths(client_mock, Mock(), queues) self.assertEqual(stats, {'foo': 'Unhandled HTTP error, status: 500'}) self.assertEqual(errors, {'critical': [], 'warning': ['foo']})
def test_401(self): queues = {'foo': self.thresholds} client_mock = Mock() client_mock.get_queue_depth.side_effect = HTTPError('', status=401) stats, errors = check_lengths(client_mock, Mock(), queues) self.assertEqual(stats, {'foo': 'Unauthorized.'}) self.assertEqual(errors, {'critical': [], 'warning': ['foo']})
def test_reset_rabbit_vhost_errors(): rabbit_manager = Mock() # 500 error error_500 = HTTPError({'reason': 'error'}, status=500) rabbit_manager.delete_vhost.side_effect = error_500 with pytest.raises(HTTPError): reset_rabbit_vhost("vhost", "username", rabbit_manager) # 404 error error_404 = HTTPError({'reason': 'error'}, status=404) rabbit_manager.delete_vhost.side_effect = error_404 # does not raise reset_rabbit_vhost("vhost", "username", rabbit_manager) assert rabbit_manager.create_vhost.call_args == call("vhost") assert rabbit_manager.set_vhost_permissions.call_args == call( "vhost", "username", '.*', '.*', '.*')
def test_reset_rabbit_connection_errors(): rabbit_manager = Mock() with patch('nameko.testing.utils.get_rabbit_connections') as connections: connections.return_value = [{ 'vhost': 'vhost_name', 'name': 'connection_name' }] # 500 error error_500 = HTTPError({'reason': 'err'}, status=500) rabbit_manager.delete_connection.side_effect = error_500 with pytest.raises(HTTPError): reset_rabbit_connections("vhost_name", rabbit_manager) # 404 error error_404 = HTTPError({'reason': 'err'}, status=404) rabbit_manager.delete_connection.side_effect = error_404 # does not raise reset_rabbit_connections("vhost_name", rabbit_manager)