summaryrefslogtreecommitdiff
path: root/openstackclient/tests/unit/identity
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2020-03-20 18:59:44 +0000
committerGerrit Code Review <review@openstack.org>2020-03-20 18:59:44 +0000
commitfc12033f1da53fe11f930dd405eae5e2bf814621 (patch)
tree7f6ea1c7667fe012fb316fef5a4a83acd12c4610 /openstackclient/tests/unit/identity
parent9277fd471a71ecac330b78718b7eecd38ce180c8 (diff)
parenteb001733fd3c1a98027f7439b84e952f1eb2a406 (diff)
downloadpython-openstackclient-fc12033f1da53fe11f930dd405eae5e2bf814621.tar.gz
Merge "Now we can add description for role creation in OSC"
Diffstat (limited to 'openstackclient/tests/unit/identity')
-rw-r--r--openstackclient/tests/unit/identity/v3/fakes.py1
-rw-r--r--openstackclient/tests/unit/identity/v3/test_role.py79
2 files changed, 80 insertions, 0 deletions
diff --git a/openstackclient/tests/unit/identity/v3/fakes.py b/openstackclient/tests/unit/identity/v3/fakes.py
index fc4a48e3..eb3ce2a3 100644
--- a/openstackclient/tests/unit/identity/v3/fakes.py
+++ b/openstackclient/tests/unit/identity/v3/fakes.py
@@ -176,6 +176,7 @@ ids_for_children = [PROJECT_WITH_GRANDPARENT['id']]
role_id = 'r1'
role_name = 'roller'
+role_description = 'role description'
ROLE = {
'id': role_id,
diff --git a/openstackclient/tests/unit/identity/v3/test_role.py b/openstackclient/tests/unit/identity/v3/test_role.py
index ead2cb58..4278ab1c 100644
--- a/openstackclient/tests/unit/identity/v3/test_role.py
+++ b/openstackclient/tests/unit/identity/v3/test_role.py
@@ -332,6 +332,7 @@ class TestRoleCreate(TestRole):
kwargs = {
'domain': None,
'name': identity_fakes.role_name,
+ 'description': None,
}
# RoleManager.create(name=, domain=)
@@ -375,6 +376,7 @@ class TestRoleCreate(TestRole):
kwargs = {
'domain': identity_fakes.domain_id,
'name': identity_fakes.ROLE_2['name'],
+ 'description': None,
}
# RoleManager.create(name=, domain=)
@@ -391,6 +393,49 @@ class TestRoleCreate(TestRole):
)
self.assertEqual(datalist, data)
+ def test_role_create_with_description(self):
+
+ self.roles_mock.create.return_value = fakes.FakeResource(
+ None,
+ copy.deepcopy(identity_fakes.ROLE_2),
+ loaded=True,
+ )
+ arglist = [
+ '--description', identity_fakes.role_description,
+ identity_fakes.ROLE_2['name'],
+ ]
+ verifylist = [
+ ('description', identity_fakes.role_description),
+ ('name', identity_fakes.ROLE_2['name']),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ # In base command class ShowOne in cliff, abstract method take_action()
+ # returns a two-part tuple with a tuple of column names and a tuple of
+ # data to be shown.
+ columns, data = self.cmd.take_action(parsed_args)
+
+ # Set expected values
+ kwargs = {
+ 'description': identity_fakes.role_description,
+ 'name': identity_fakes.ROLE_2['name'],
+ 'domain': None,
+ }
+
+ # RoleManager.create(name=, domain=)
+ self.roles_mock.create.assert_called_with(
+ **kwargs
+ )
+
+ collist = ('domain', 'id', 'name')
+ self.assertEqual(collist, columns)
+ datalist = (
+ 'd1',
+ identity_fakes.ROLE_2['id'],
+ identity_fakes.ROLE_2['name'],
+ )
+ self.assertEqual(datalist, data)
+
class TestRoleDelete(TestRole):
@@ -825,6 +870,7 @@ class TestRoleSet(TestRole):
# Set expected values
kwargs = {
'name': 'over',
+ 'description': None,
}
# RoleManager.update(role, name=)
self.roles_mock.update.assert_called_with(
@@ -856,6 +902,39 @@ class TestRoleSet(TestRole):
# Set expected values
kwargs = {
'name': 'over',
+ 'description': None,
+ }
+ # RoleManager.update(role, name=)
+ self.roles_mock.update.assert_called_with(
+ identity_fakes.ROLE_2['id'],
+ **kwargs
+ )
+ self.assertIsNone(result)
+
+ def test_role_set_description(self):
+ self.roles_mock.get.return_value = fakes.FakeResource(
+ None,
+ copy.deepcopy(identity_fakes.ROLE_2),
+ loaded=True,
+ )
+ arglist = [
+ '--name', 'over',
+ '--description', identity_fakes.role_description,
+ identity_fakes.ROLE_2['name'],
+ ]
+ verifylist = [
+ ('name', 'over'),
+ ('description', identity_fakes.role_description),
+ ('role', identity_fakes.ROLE_2['name']),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ result = self.cmd.take_action(parsed_args)
+
+ # Set expected values
+ kwargs = {
+ 'name': 'over',
+ 'description': identity_fakes.role_description,
}
# RoleManager.update(role, name=)
self.roles_mock.update.assert_called_with(