diff options
Diffstat (limited to 'openstackclient/tests')
| -rw-r--r-- | openstackclient/tests/fakes.py | 2 | ||||
| -rw-r--r-- | openstackclient/tests/identity/v3/test_oauth.py | 24 | ||||
| -rw-r--r-- | openstackclient/tests/identity/v3/test_user.py | 47 |
3 files changed, 68 insertions, 5 deletions
diff --git a/openstackclient/tests/fakes.py b/openstackclient/tests/fakes.py index 93d4294d..e25751d6 100644 --- a/openstackclient/tests/fakes.py +++ b/openstackclient/tests/fakes.py @@ -37,7 +37,7 @@ TEST_RESPONSE_DICT_V3.set_project_scope() TEST_VERSIONS = fixture.DiscoveryList(href=AUTH_URL) -class FakeStdout: +class FakeStdout(object): def __init__(self): self.content = [] diff --git a/openstackclient/tests/identity/v3/test_oauth.py b/openstackclient/tests/identity/v3/test_oauth.py index 15ba04e3..435042d1 100644 --- a/openstackclient/tests/identity/v3/test_oauth.py +++ b/openstackclient/tests/identity/v3/test_oauth.py @@ -26,6 +26,10 @@ class TestOAuth1(identity_fakes.TestOAuth1): self.access_tokens_mock.reset_mock() self.request_tokens_mock = identity_client.oauth1.request_tokens self.request_tokens_mock.reset_mock() + self.projects_mock = identity_client.projects + self.projects_mock.reset_mock() + self.roles_mock = identity_client.roles + self.roles_mock.reset_mock() class TestRequestTokenCreate(TestOAuth1): @@ -39,18 +43,24 @@ class TestRequestTokenCreate(TestOAuth1): loaded=True, ) + self.projects_mock.get.return_value = fakes.FakeResource( + None, + copy.deepcopy(identity_fakes.PROJECT), + loaded=True, + ) + self.cmd = token.CreateRequestToken(self.app, None) def test_create_request_tokens(self): arglist = [ '--consumer-key', identity_fakes.consumer_id, '--consumer-secret', identity_fakes.consumer_secret, - '--project-id', identity_fakes.project_id, + '--project', identity_fakes.project_id, ] verifylist = [ ('consumer_key', identity_fakes.consumer_id), ('consumer_secret', identity_fakes.consumer_secret), - ('project_id', identity_fakes.project_id), + ('project', identity_fakes.project_id), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) @@ -77,6 +87,12 @@ class TestRequestTokenAuthorize(TestOAuth1): def setUp(self): super(TestRequestTokenAuthorize, self).setUp() + self.roles_mock.get.return_value = fakes.FakeResource( + None, + copy.deepcopy(identity_fakes.ROLE), + loaded=True, + ) + copied_verifier = copy.deepcopy(identity_fakes.OAUTH_VERIFIER) resource = fakes.FakeResource(None, copied_verifier, loaded=True) self.request_tokens_mock.authorize.return_value = resource @@ -85,11 +101,11 @@ class TestRequestTokenAuthorize(TestOAuth1): def test_authorize_request_tokens(self): arglist = [ '--request-key', identity_fakes.request_token_id, - '--role-ids', identity_fakes.role_id, + '--role', identity_fakes.role_name, ] verifylist = [ ('request_key', identity_fakes.request_token_id), - ('role_ids', identity_fakes.role_id), + ('role', [identity_fakes.role_name]), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = self.cmd.take_action(parsed_args) diff --git a/openstackclient/tests/identity/v3/test_user.py b/openstackclient/tests/identity/v3/test_user.py index dd517e19..35dd98ee 100644 --- a/openstackclient/tests/identity/v3/test_user.py +++ b/openstackclient/tests/identity/v3/test_user.py @@ -44,6 +44,11 @@ class TestUser(identity_fakes.TestIdentityv3): self.users_mock = self.app.client_manager.identity.users self.users_mock.reset_mock() + # Shortcut for RoleAssignmentManager Mock + self.role_assignments_mock = self.app.client_manager.identity.\ + role_assignments + self.role_assignments_mock.reset_mock() + class TestUserCreate(TestUser): @@ -511,6 +516,21 @@ class TestUserList(TestUser): loaded=True, ) + self.projects_mock.get.return_value = fakes.FakeResource( + None, + copy.deepcopy(identity_fakes.PROJECT), + loaded=True, + ) + + self.role_assignments_mock.list.return_value = [ + fakes.FakeResource( + None, + copy.deepcopy( + identity_fakes.ASSIGNMENT_WITH_PROJECT_ID_AND_USER_ID), + loaded=True, + ) + ] + # Get the command object to test self.cmd = user.ListUser(self.app, None) @@ -643,6 +663,33 @@ class TestUserList(TestUser): ), ) self.assertEqual(datalist, tuple(data)) + def test_user_list_project(self): + arglist = [ + '--project', identity_fakes.project_name, + ] + verifylist = [ + ('project', identity_fakes.project_name), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + # DisplayCommandBase.take_action() returns two tuples + columns, data = self.cmd.take_action(parsed_args) + + kwargs = { + 'project': identity_fakes.project_id, + } + + self.role_assignments_mock.list.assert_called_with(**kwargs) + self.users_mock.get.assert_called_with(identity_fakes.user_id) + + collist = ['ID', 'Name'] + self.assertEqual(columns, collist) + datalist = (( + identity_fakes.user_id, + identity_fakes.user_name, + ), ) + self.assertEqual(datalist, tuple(data)) + class TestUserSet(TestUser): |
