From 7f6af025f3c633189c223ff22d9fa1368c4852df Mon Sep 17 00:00:00 2001 From: Kevin Glisson Date: Sun, 30 Nov 2014 11:16:29 -0800 Subject: [PATCH] Create role does not allow for document policies to be passed to it --- moto/iam/models.py | 8 ++++---- tests/test_iam/test_iam.py | 6 ++++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/moto/iam/models.py b/moto/iam/models.py index a9bd4eb71..d1c805117 100644 --- a/moto/iam/models.py +++ b/moto/iam/models.py @@ -8,12 +8,12 @@ from datetime import datetime class Role(object): - def __init__(self, role_id, name, assume_role_policy_document, path, policies): + def __init__(self, role_id, name, assume_role_policy_document, path): self.id = role_id self.name = name self.assume_role_policy_document = assume_role_policy_document self.path = path - self.policies = policies + self.policies = {} @classmethod def create_from_cloudformation_json(cls, resource_name, cloudformation_json, region_name): @@ -185,9 +185,9 @@ class IAMBackend(BaseBackend): self.users = {} super(IAMBackend, self).__init__() - def create_role(self, role_name, assume_role_policy_document, path, policies): + def create_role(self, role_name, assume_role_policy_document, path): role_id = random_resource_id() - role = Role(role_id, role_name, assume_role_policy_document, path, policies) + role = Role(role_id, role_name, assume_role_policy_document, path) self.roles[role_id] = role return role diff --git a/tests/test_iam/test_iam.py b/tests/test_iam/test_iam.py index e9121a5aa..500e74ada 100644 --- a/tests/test_iam/test_iam.py +++ b/tests/test_iam/test_iam.py @@ -61,6 +61,12 @@ def test_create_role_and_instance_profile(): conn.list_roles().roles[0].role_name.should.equal('my-role') conn.list_instance_profiles().instance_profiles[0].instance_profile_name.should.equal("my-profile") +@mock_iam() +def test_create_role(): + conn = boto.connect_iam() + conn.create_role('test') + with assert_raises(BotoServerError): + conn.create_role('test') @mock_iam() def test_create_group():