Exemple #1
0
 def put(self, data):
     """Modify this extension."""
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     obj = handler.update(self._id,
                          data.as_dict(objects.registry.Extension))
     return extension.Extension.from_db_model(obj, pecan.request.host_url)
Exemple #2
0
    def get(self):
        euri = uris.EXTNS_URI_STR % pecan.request.host_url
        desc = "Solum CAMP API extensions collection resource."

        handlr = (extension_handler.ExtensionHandler(
            pecan.request.security_context))
        ext_objs = handlr.get_all()
        e_links = []
        for m in ext_objs:
            e_links.append(
                common_types.Link(href=uris.EXTN_URI_STR %
                                  (pecan.request.host_url, m.uuid),
                                  target_name=m.name))

        # if there aren't any extensions, avoid returning a resource with an
        # empty extension_links array
        if len(e_links) > 0:
            res = model.Extensions(uri=euri,
                                   name="Solum_CAMP_extensions",
                                   type='extensions',
                                   description=desc,
                                   extension_links=e_links)
        else:
            res = model.Extensions(uri=euri,
                                   name="Solum_CAMP_extensions",
                                   type='extensions',
                                   description=desc)
        return res
Exemple #3
0
 def test_extension_get(self, mock_registry):
     mock_registry.Extension.get_by_uuid.return_value = {}
     handler = extension.ExtensionHandler(self.ctx)
     res = handler.get('test_id')
     self.assertIsNotNone(res)
     mock_registry.Extension.get_by_uuid.assert_called_once_with(
         self.ctx, 'test_id')
Exemple #4
0
 def get_all(self):
     """Return all extensions, based on the query provided."""
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     return [
         extension.Extension.from_db_model(obj, pecan.request.host_url)
         for obj in handler.get_all()
     ]
Exemple #5
0
 def get(self):
     """Return this extension."""
     policy.check('show_extension', pecan.request.security_context)
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     host_url = pecan.request.application_url.rstrip('/')
     return extension.Extension.from_db_model(handler.get(self._id),
                                              host_url)
Exemple #6
0
 def post(self, data):
     """Create a new extension."""
     policy.check('create_extension', pecan.request.security_context)
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     obj = handler.create(data.as_dict(objects.registry.Extension))
     host_url = pecan.request.application_url.rstrip('/')
     return extension.Extension.from_db_model(obj, host_url)
Exemple #7
0
 def test_extension_delete(self, mock_registry):
     db_obj = fakes.FakeExtension()
     mock_registry.Extension.get_by_uuid.return_value = db_obj
     handler = extension.ExtensionHandler(self.ctx)
     handler.delete('test_id')
     db_obj.destroy.assert_called_once_with(self.ctx)
     mock_registry.Extension.get_by_uuid.assert_called_once_with(
         self.ctx, 'test_id')
Exemple #8
0
 def test_extension_create(self, mock_registry):
     data = {'name': 'new_name', 'uuid': 'input_uuid'}
     db_obj = fakes.FakeExtension()
     mock_registry.Extension.return_value = db_obj
     handler = extension.ExtensionHandler(self.ctx)
     res = handler.create(data)
     db_obj.update.assert_called_once_with(data)
     db_obj.create.assert_called_once_with(self.ctx)
     self.assertEqual(db_obj, res)
Exemple #9
0
 def put(self, data):
     """Modify this extension."""
     policy.check('update_extension', pecan.request.security_context)
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     obj = handler.update(self._id,
                          data.as_dict(objects.registry.Extension))
     host_url = pecan.request.application_url.rstrip('/')
     return extension.Extension.from_db_model(obj, host_url)
Exemple #10
0
 def get_all(self):
     """Return all extensions, based on the query provided."""
     policy.check('get_extensions', pecan.request.security_context)
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     host_url = pecan.request.application_url.rstrip('/')
     return [
         extension.Extension.from_db_model(obj, host_url)
         for obj in handler.get_all()
     ]
Exemple #11
0
 def test_extension_update(self, mock_registry):
     data = {'user_id': 'new_user_id'}
     db_obj = fakes.FakeExtension()
     mock_registry.Extension.get_by_uuid.return_value = db_obj
     handler = extension.ExtensionHandler()
     res = handler.update('test_id', data)
     self.assertEqual(db_obj.user_id, res.user_id)
     self.assertEqual(db_obj.project_id, res.project_id)
     self.assertEqual(db_obj.name, res.name)
     self.assertEqual(db_obj.value, res.value)
     self.assertEqual(db_obj.version, res.version)
     self.assertEqual(db_obj.uuid, res.uuid)
     self.assertEqual(db_obj.uri, res.uri)
     self.assertEqual(db_obj.type, res.type)
     db_obj.save.assert_called_once_with(None)
     mock_registry.Extension.get_by_uuid.assert_called_once_with(
         None, 'test_id')
Exemple #12
0
 def __init__(self, extension_id):
     self._id = extension_id
     self._handler = extension_handler.ExtensionHandler()
Exemple #13
0
 def test_extension_create(self, mock_registry):
     data = {'user_id': 'new_user_id'}
     handler = extension.ExtensionHandler()
     res = handler.create(data)
     self.assertEqual('new_user_id', res.user_id)
Exemple #14
0
 def delete(self):
     """Delete this extension."""
     policy.check('delete_extension', pecan.request.security_context)
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     handler.delete(self._id)
Exemple #15
0
 def get(self):
     """Return this extension."""
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     return extension.Extension.from_db_model(handler.get(self._id),
                                              pecan.request.host_url)
Exemple #16
0
 def delete(self):
     """Delete this extension."""
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     handler.delete(self._id)
Exemple #17
0
 def test_extension_update(self, mock_registry):
     data = {'name': 'new_name'}
     handler = extension.ExtensionHandler(self.ctx)
     handler.update('test_id', data)
     mock_registry.Extension.update_and_save.assert_called_once_with(
         self.ctx, 'test_id', data)
Exemple #18
0
 def post(self, data):
     """Create a new extension."""
     handler = extension_handler.ExtensionHandler(
         pecan.request.security_context)
     obj = handler.create(data.as_dict(objects.registry.Extension))
     return extension.Extension.from_db_model(obj, pecan.request.host_url)
Exemple #19
0
 def test_extension_get_all(self, mock_registry):
     mock_registry.ExtensionList.get_all.return_value = {}
     handler = extension.ExtensionHandler(self.ctx)
     res = handler.get_all()
     self.assertIsNotNone(res)
     mock_registry.ExtensionList.get_all.assert_called_once_with(self.ctx)
Exemple #20
0
 def __init__(self):
     super(ExtensionsController, self).__init__()
     self._handler = extension_handler.ExtensionHandler()
Exemple #21
0
 def test_extension_get(self):
     handler = extension.ExtensionHandler()
     res = handler.get('test_id')
     self.assertIsNotNone(res)
Exemple #22
0
 def get(self):
     """Return this extension."""
     handler = extension_handler.ExtensionHandler()
     return handler.get(self._id)