Пример #1
0
    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)
Пример #2
0
    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)
Пример #3
0
    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']})
Пример #4
0
    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']})
Пример #5
0
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", '.*', '.*', '.*')
Пример #6
0
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)