def test_make_it(self):
     sot = project.Project(EXAMPLE)
     self.assertEqual(EXAMPLE['description'], sot.description)
     self.assertEqual(EXAMPLE['domain_id'], sot.domain_id)
     self.assertEqual(EXAMPLE['enabled'], sot.enabled)
     self.assertEqual(EXAMPLE['id'], sot.id)
     self.assertEqual(EXAMPLE['name'], sot.name)
Beispiel #2
0
def find_project(sdk_connection, name_or_id, domain_name_or_id=None):
    """Find a project by its name name or ID.

    If Forbidden to find the resource (a common case if the user does not have
    permission), then return the resource by creating a local instance of
    openstack.identity.v3.Project resource.

    :param sdk_connection: Connection object of OpenStack SDK.
    :type sdk_connection: `openstack.connection.Connection`
    :param name_or_id: Name or ID of the project
    :type name_or_id: string
    :param domain_name_or_id: Domain name or ID of the project.
        This can be used when there are multiple projects with a same name.
    :returns: the project object found
    :rtype: `openstack.identity.v3.project.Project`

    """
    try:
        if domain_name_or_id:
            domain = sdk_connection.identity.find_domain(domain_name_or_id,
                                                         ignore_missing=False)
            domain_id = domain.id
        else:
            domain_id = None
        return sdk_connection.identity.find_project(name_or_id,
                                                    ignore_missing=False,
                                                    domain_id=domain_id)
    # NOTE: OpenStack SDK raises HttpException for 403 response code.
    # There is no specific exception class at now, so we need to catch
    # HttpException and check the status code.
    except exceptions.HttpException as e:
        if e.status_code == 403:
            return project.Project(id=name_or_id, name=name_or_id)
        raise
Beispiel #3
0
    def test_basic(self):
        sot = project.Project()
        self.assertEqual('project', sot.resource_key)
        self.assertEqual('projects', sot.resources_key)
        self.assertEqual('/projects', sot.base_path)
        self.assertTrue(sot.allow_create)
        self.assertTrue(sot.allow_fetch)
        self.assertTrue(sot.allow_commit)
        self.assertTrue(sot.allow_delete)
        self.assertTrue(sot.allow_list)
        self.assertEqual('PATCH', sot.commit_method)

        self.assertDictEqual(
            {
                'domain_id': 'domain_id',
                'is_domain': 'is_domain',
                'name': 'name',
                'parent_id': 'parent_id',
                'is_enabled': 'enabled',
                'limit': 'limit',
                'marker': 'marker',
                'tags': 'tags',
                'any_tags': 'tags-any',
                'not_tags': 'not-tags',
                'not_any_tags': 'not-tags-any',
            }, sot._query_mapping._mapping)
Beispiel #4
0
 def test_make_it(self):
     sot = project.Project(**EXAMPLE)
     self.assertEqual(EXAMPLE['description'], sot.description)
     self.assertEqual(EXAMPLE['domain_id'], sot.domain_id)
     self.assertFalse(sot.is_domain)
     self.assertTrue(sot.is_enabled)
     self.assertEqual(EXAMPLE['id'], sot.id)
     self.assertEqual(EXAMPLE['name'], sot.name)
     self.assertEqual(EXAMPLE['parent_id'], sot.parent_id)
 def test_basic(self):
     sot = project.Project()
     self.assertEqual('project', sot.resource_key)
     self.assertEqual('projects', sot.resources_key)
     self.assertEqual('/projects', sot.base_path)
     self.assertEqual('identity', sot.service.service_type)
     self.assertTrue(sot.allow_create)
     self.assertTrue(sot.allow_retrieve)
     self.assertTrue(sot.allow_update)
     self.assertTrue(sot.allow_delete)
     self.assertTrue(sot.allow_list)
Beispiel #6
0
    def test_basic(self):
        sot = project.Project()
        self.assertEqual('project', sot.resource_key)
        self.assertEqual('projects', sot.resources_key)
        self.assertEqual('/projects', sot.base_path)
        self.assertEqual('identity', sot.service.service_type)
        self.assertTrue(sot.allow_create)
        self.assertTrue(sot.allow_get)
        self.assertTrue(sot.allow_update)
        self.assertTrue(sot.allow_delete)
        self.assertTrue(sot.allow_list)
        self.assertEqual('PATCH', sot.update_method)

        self.assertDictEqual(
            {
                'domain_id': 'domain_id',
                'is_domain': 'is_domain',
                'name': 'name',
                'parent_id': 'parent_id',
                'is_enabled': 'enabled',
                'limit': 'limit',
                'marker': 'marker',
            }, sot._query_mapping._mapping)
 def get_project(self, **data):
     return project.Project(data).get(self.session)
Beispiel #8
0
 def update_project(self, **data):
     return project.Project(data).update(self.session)
Beispiel #9
0
 def delete_project(self, **data):
     project.Project(data).delete(self.session)
Beispiel #10
0
 def create_project(self, **data):
     return project.Project(data).create(self.session)