Correct exception raised in few db APIs
This patch corrects wrong exception raised in below db APIs: 1. get_rcs_by_bay_uuid 2. get_services_by_bay_uuid Co-Authored-By: Vilobh Meshram <vilobhmm@yahoo-inc.com> Closes-bug: #1475556 Change-Id: I7c3307747f6ae905a9eecc2e755e5c7d6ddde91d
This commit is contained in:
parent
8719df3b99
commit
a75b8f0f03
|
@ -781,7 +781,9 @@ class Connection(api.Connection):
|
|||
except NoResultFound:
|
||||
raise exception.ServiceNotFound(service=service_uuid)
|
||||
|
||||
def get_services_by_bay_uuid(self, bay_uuid):
|
||||
def get_services_by_bay_uuid(self, context, bay_uuid):
|
||||
# First verify whether the Bay exists
|
||||
self.get_bay_by_uuid(context, bay_uuid)
|
||||
query = model_query(models.Service).filter_by(bay_uuid=bay_uuid)
|
||||
try:
|
||||
return query.all()
|
||||
|
@ -886,7 +888,9 @@ class Connection(api.Connection):
|
|||
except NoResultFound:
|
||||
raise exception.ReplicationControllerNotFound(rc=rc_uuid)
|
||||
|
||||
def get_rcs_by_bay_uuid(self, bay_uuid):
|
||||
def get_rcs_by_bay_uuid(self, context, bay_uuid):
|
||||
# First verify whether the Bay exists
|
||||
self.get_bay_by_uuid(context, bay_uuid)
|
||||
query = model_query(models.ReplicationController).filter_by(
|
||||
bay_uuid=bay_uuid)
|
||||
try:
|
||||
|
|
|
@ -107,7 +107,8 @@ class Service(base.MagnumPersistentObject, base.MagnumObject,
|
|||
:param context: Security context
|
||||
:returns: a list of class:`Service` object.
|
||||
"""
|
||||
db_services = cls.dbapi.get_services_by_bay_uuid(bay_uuid)
|
||||
db_services = cls.dbapi.get_services_by_bay_uuid(context,
|
||||
bay_uuid)
|
||||
return Service._from_db_object_list(db_services, cls, context)
|
||||
|
||||
@base.remotable_classmethod
|
||||
|
|
|
@ -106,12 +106,15 @@ class DbRCTestCase(base.DbTestCase):
|
|||
self.assertEqual(0, len(rc))
|
||||
|
||||
def test_get_rcs_by_bay_uuid(self):
|
||||
rc = self.dbapi.get_rcs_by_bay_uuid(self.bay.uuid)
|
||||
rc = self.dbapi.get_rcs_by_bay_uuid(self.context,
|
||||
self.bay.uuid)
|
||||
self.assertEqual(self.rc.id, rc[0].id)
|
||||
|
||||
def test_get_rcs_by_bay_uuid_that_does_not_exist(self):
|
||||
res = self.dbapi.get_rcs_by_bay_uuid(magnum_utils.generate_uuid())
|
||||
self.assertEqual([], res)
|
||||
self.assertRaises(exception.BayNotFound,
|
||||
self.dbapi.get_rcs_by_bay_uuid,
|
||||
self.context,
|
||||
magnum_utils.generate_uuid())
|
||||
|
||||
def test_destroy_rc(self):
|
||||
self.dbapi.destroy_rc(self.rc.id)
|
||||
|
|
|
@ -148,12 +148,15 @@ class DbServiceTestCase(base.DbTestCase):
|
|||
self.assertEqual(0, len(res))
|
||||
|
||||
def test_get_services_by_bay_uuid(self):
|
||||
res = self.dbapi.get_services_by_bay_uuid(self.bay.uuid)
|
||||
res = self.dbapi.get_services_by_bay_uuid(self.context,
|
||||
self.bay.uuid)
|
||||
self.assertEqual(self.service.id, res[0].id)
|
||||
|
||||
def test_get_services_by_bay_uuid_that_does_not_exist(self):
|
||||
res = self.dbapi.get_services_by_bay_uuid(magnum_utils.generate_uuid())
|
||||
self.assertEqual([], res)
|
||||
self.assertRaises(exception.BayNotFound,
|
||||
self.dbapi.get_services_by_bay_uuid,
|
||||
self.context,
|
||||
magnum_utils.generate_uuid())
|
||||
|
||||
def test_destroy_service(self):
|
||||
self.dbapi.destroy_service(self.service.id)
|
||||
|
|
|
@ -55,6 +55,17 @@ class TestServiceObject(base.DbTestCase):
|
|||
mock_get_service.assert_called_once_with(self.context, name)
|
||||
self.assertEqual(self.context, service._context)
|
||||
|
||||
def test_list_by_bay_uuid(self):
|
||||
bay_uuid = self.fake_service['bay_uuid']
|
||||
with mock.patch.object(self.dbapi, 'get_services_by_bay_uuid',
|
||||
autospec=True) as mock_get_service:
|
||||
mock_get_service.return_value = [self.fake_service]
|
||||
services = objects.Service.list_by_bay_uuid(self.context,
|
||||
bay_uuid)
|
||||
self.assertThat(services, HasLength(1))
|
||||
mock_get_service.assert_called_once_with(self.context,
|
||||
bay_uuid)
|
||||
|
||||
def test_list(self):
|
||||
with mock.patch.object(self.dbapi, 'get_service_list',
|
||||
autospec=True) as mock_get_list:
|
||||
|
|
Loading…
Reference in New Issue