Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(56)

Unified Diff: third_party/boto/tests/unit/iam/test_connection.py

Issue 698893003: Update checked in version of gsutil to version 4.6 (Closed) Base URL: http://dart.googlecode.com/svn/third_party/gsutil/
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/boto/tests/unit/iam/test_connection.py
===================================================================
--- third_party/boto/tests/unit/iam/test_connection.py (revision 33376)
+++ third_party/boto/tests/unit/iam/test_connection.py (working copy)
@@ -164,3 +164,143 @@
'SAMLProviderArn': 'arn'
},
ignore_params_values=['Version'])
+
+
+class TestCreateRole(AWSMockServiceTestCase):
+ connection_class = IAMConnection
+
+ def default_body(self):
+ return """
+ <CreateRoleResponse xmlns="https://iam.amazonaws.com/doc/2010-05-08/">
+ <CreateRoleResult>
+ <Role>
+ <Path>/application_abc/component_xyz/</Path>
+ <Arn>arn:aws:iam::123456789012:role/application_abc/component_xyz/S3Access</Arn>
+ <RoleName>S3Access</RoleName>
+ <AssumeRolePolicyDocument>{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"Service":["ec2.amazonaws.com"]},"Action":["sts:AssumeRole"]}]}</AssumeRolePolicyDocument>
+ <CreateDate>2012-05-08T23:34:01.495Z</CreateDate>
+ <RoleId>AROADBQP57FF2AEXAMPLE</RoleId>
+ </Role>
+ </CreateRoleResult>
+ <ResponseMetadata>
+ <RequestId>4a93ceee-9966-11e1-b624-b1aEXAMPLE7c</RequestId>
+ </ResponseMetadata>
+ </CreateRoleResponse>
+ """
+
+ def test_create_role_default(self):
+ self.set_http_response(status_code=200)
+ response = self.service_connection.create_role('a_name')
+
+ self.assert_request_parameters(
+ {'Action': 'CreateRole',
+ 'AssumeRolePolicyDocument': '{"Statement": [{"Action": ["sts:AssumeRole"], "Effect": "Allow", "Principal": {"Service": ["ec2.amazonaws.com"]}}]}',
+ 'RoleName': 'a_name'},
+ ignore_params_values=['Version'])
+
+ def test_create_role_default_cn_north(self):
+ self.set_http_response(status_code=200)
+ self.service_connection.host = 'iam.cn-north-1.amazonaws.com.cn'
+ response = self.service_connection.create_role('a_name')
+
+ self.assert_request_parameters(
+ {'Action': 'CreateRole',
+ 'AssumeRolePolicyDocument': '{"Statement": [{"Action": ["sts:AssumeRole"], "Effect": "Allow", "Principal": {"Service": ["ec2.amazonaws.com.cn"]}}]}',
+ 'RoleName': 'a_name'},
+ ignore_params_values=['Version'])
+
+ def test_create_role_string_policy(self):
+ self.set_http_response(status_code=200)
+ response = self.service_connection.create_role(
+ 'a_name',
+ # Historical usage.
+ assume_role_policy_document='{"hello": "policy"}'
+ )
+
+ self.assert_request_parameters(
+ {'Action': 'CreateRole',
+ 'AssumeRolePolicyDocument': '{"hello": "policy"}',
+ 'RoleName': 'a_name'},
+ ignore_params_values=['Version'])
+
+ def test_create_role_data_policy(self):
+ self.set_http_response(status_code=200)
+ response = self.service_connection.create_role(
+ 'a_name',
+ # With plain data, we should dump it for them.
+ assume_role_policy_document={"hello": "policy"}
+ )
+
+ self.assert_request_parameters(
+ {'Action': 'CreateRole',
+ 'AssumeRolePolicyDocument': '{"hello": "policy"}',
+ 'RoleName': 'a_name'},
+ ignore_params_values=['Version'])
+
+
+class TestGetSigninURL(AWSMockServiceTestCase):
+ connection_class = IAMConnection
+
+ def default_body(self):
+ return """
+ <ListAccountAliasesResponse>
+ <ListAccountAliasesResult>
+ <IsTruncated>false</IsTruncated>
+ <AccountAliases>
+ <member>foocorporation</member>
+ <member>anotherunused</member>
+ </AccountAliases>
+ </ListAccountAliasesResult>
+ <ResponseMetadata>
+ <RequestId>c5a076e9-f1b0-11df-8fbe-45274EXAMPLE</RequestId>
+ </ResponseMetadata>
+ </ListAccountAliasesResponse>
+ """
+
+ def test_get_signin_url_default(self):
+ self.set_http_response(status_code=200)
+ url = self.service_connection.get_signin_url()
+ self.assertEqual(
+ url,
+ 'https://foocorporation.signin.aws.amazon.com/console/ec2'
+ )
+
+ def test_get_signin_url_s3(self):
+ self.set_http_response(status_code=200)
+ url = self.service_connection.get_signin_url(service='s3')
+ self.assertEqual(
+ url,
+ 'https://foocorporation.signin.aws.amazon.com/console/s3'
+ )
+
+ def test_get_signin_url_cn_north(self):
+ self.set_http_response(status_code=200)
+ self.service_connection.host = 'iam.cn-north-1.amazonaws.com.cn'
+ url = self.service_connection.get_signin_url()
+ self.assertEqual(
+ url,
+ 'https://foocorporation.signin.aws.amazon.com/console/ec2'
+ )
+
+
+class TestGetSigninURL(AWSMockServiceTestCase):
+ connection_class = IAMConnection
+
+ def default_body(self):
+ return """
+ <ListAccountAliasesResponse>
+ <ListAccountAliasesResult>
+ <IsTruncated>false</IsTruncated>
+ <AccountAliases></AccountAliases>
+ </ListAccountAliasesResult>
+ <ResponseMetadata>
+ <RequestId>c5a076e9-f1b0-11df-8fbe-45274EXAMPLE</RequestId>
+ </ResponseMetadata>
+ </ListAccountAliasesResponse>
+ """
+
+ def test_get_signin_url_no_aliases(self):
+ self.set_http_response(status_code=200)
+
+ with self.assertRaises(Exception):
+ self.service_connection.get_signin_url()
« no previous file with comments | « third_party/boto/tests/unit/glacier/test_layer2.py ('k') | third_party/boto/tests/unit/mws/test_connection.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698