Skip to content

Commit 8f45ac8

Browse files
Luke Sneeringertseaver
authored andcommitted
Coerce role-principal values to frozenset.
1 parent 4d32b2a commit 8f45ac8

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

packages/google-cloud-core/google/cloud/iam.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ def __getitem__(self, key):
7171
return self._bindings[key]
7272

7373
def __setitem__(self, key, value):
74-
self._bindings[key] = value
74+
self._bindings[key] = frozenset(value)
7575

7676
def __delitem__(self, key):
7777
del self._bindings[key]

packages/google-cloud-core/tests/unit/test_iam.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,12 @@ def test___getitem___miss(self):
5858

5959
def test___setitem__(self):
6060
USER = 'user:phred@example.com'
61+
PRINCIPALS = frozenset([USER])
6162
policy = self._make_one()
6263
policy['rolename'] = [USER]
63-
self.assertEqual(policy['rolename'], [USER])
64+
self.assertEqual(policy['rolename'], PRINCIPALS)
6465
self.assertEqual(len(policy), 1)
65-
self.assertEqual(dict(policy), {'rolename': [USER]})
66+
self.assertEqual(dict(policy), {'rolename': PRINCIPALS})
6667

6768
def test___delitem___hit(self):
6869
policy = self._make_one()

0 commit comments

Comments
 (0)