Fix 500 error for showing deleted flavor details
Displaying deleted flavor details throws 500 internal server error. Added 404 HttpNotFound status code in "@extension.expected_errors". APIImpact: Return 404 status code for list extra specs for a deleted flavor. Closes-Bug: #1538896 Change-Id: Iba33296c28c3c3d6ba60052fe434107ac9c00c61
This commit is contained in:
parent
d98ec2e4b7
commit
4184f98501
|
@ -52,7 +52,7 @@ class FlavorExtraSpecsController(wsgi.Controller):
|
|||
raise webob.exc.HTTPBadRequest(
|
||||
explanation=error.format_message())
|
||||
|
||||
@extensions.expected_errors(())
|
||||
@extensions.expected_errors(404)
|
||||
def index(self, req, flavor_id):
|
||||
"""Returns the list of extra specs for a given flavor."""
|
||||
context = req.environ['nova.context']
|
||||
|
|
|
@ -90,6 +90,14 @@ class FlavorsExtraSpecsTestV21(test.TestCase):
|
|||
|
||||
self.assertEqual(0, len(res_dict['extra_specs']))
|
||||
|
||||
def test_index_flavor_not_found(self):
|
||||
req = self._get_request('1/os-extra_specs',
|
||||
use_admin_context=True)
|
||||
with mock.patch('nova.db.flavor_get_by_flavor_id') as mock_get:
|
||||
mock_get.side_effect = exception.FlavorNotFound(flavor_id='1')
|
||||
self.assertRaises(webob.exc.HTTPNotFound, self.controller.index,
|
||||
req, 1)
|
||||
|
||||
def test_show(self):
|
||||
flavor = dict(test_flavor.fake_flavor,
|
||||
extra_specs={'key5': 'value5'})
|
||||
|
|
Loading…
Reference in New Issue