Add proxy for trust operations

This patch adds proxy methods for operating trusts.

Change-Id: I3230871ab71e1c9320367f75b4aeaae3c3717a82
This commit is contained in:
tengqm
2015-04-26 00:43:26 -04:00
parent c8a816d59d
commit 151e1f0db7
4 changed files with 50 additions and 0 deletions

View File

@@ -17,6 +17,7 @@ from openstack.identity.v3 import group
from openstack.identity.v3 import policy
from openstack.identity.v3 import project
from openstack.identity.v3 import service
from openstack.identity.v3 import trust
from openstack.identity.v3 import user
from openstack import proxy
@@ -262,3 +263,21 @@ class Proxy(proxy.BaseProxy):
def update_user(self, **data):
return user.User(data).update(self.session)
def create_trust(self, **data):
return trust.Trust(data).create(self.session)
def delete_trust(self, value, ignore_missing=True):
self._delete(trust.Trust, value, ignore_missing)
def find_trust(self, name_or_id):
return trust.Trust.find(self.session, name_or_id)
def get_trust(self, **data):
return trust.Trust(data).get(self.session)
def list_trusts(self):
return trust.Trust.list(self.session)
def update_trust(self, **data):
return trust.Trust(data).update(self.session)

View File

@@ -55,3 +55,5 @@ class Trust(resource.Resource):
#: trustor must already be granted these roles in the project referenced
#: by the ``project_id`` attribute. *Type: list*
roles = resource.prop('roles')
#: Redelegation count
redelegation_count = resource.prop('redelegation_count')

View File

@@ -18,6 +18,7 @@ from openstack.identity.v3 import group
from openstack.identity.v3 import policy
from openstack.identity.v3 import project
from openstack.identity.v3 import service
from openstack.identity.v3 import trust
from openstack.identity.v3 import user
from openstack.tests.unit import test_proxy_base
@@ -240,3 +241,29 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
def test_user_update(self):
self.verify_update('openstack.identity.v3.user.User.update',
self.proxy.update_user)
def test_trust_create(self):
self.verify_create('openstack.identity.v3.trust.Trust.create',
self.proxy.create_trust)
def test_trust_delete(self):
self.verify_delete2(trust.Trust, self.proxy.delete_trust, False)
def test_trust_delete_ignore(self):
self.verify_delete2(trust.Trust, self.proxy.delete_trust, True)
def test_trust_find(self):
self.verify_find('openstack.identity.v3.trust.Trust.find',
self.proxy.find_trust)
def test_trust_get(self):
self.verify_get('openstack.identity.v3.trust.Trust.get',
self.proxy.get_trust)
def test_trust_list(self):
self.verify_list('openstack.identity.v3.trust.Trust.list',
self.proxy.list_trusts)
def test_trust_update(self):
self.verify_update('openstack.identity.v3.trust.Trust.update',
self.proxy.update_trust)

View File

@@ -23,6 +23,7 @@ EXAMPLE = {
'trustee_user_id': '2',
'trustor_user_id': '3',
'roles': [{'name': 'test-role'}],
'redelegation_count': '0',
}
@@ -49,3 +50,4 @@ class TestTrust(testtools.TestCase):
self.assertEqual(EXAMPLE['trustee_user_id'], sot.trustee_user_id)
self.assertEqual(EXAMPLE['trustor_user_id'], sot.trustor_user_id)
self.assertEqual(EXAMPLE['roles'], sot.roles)
self.assertEqual(EXAMPLE['redelegation_count'], sot.redelegation_count)