From fab570d2897cce7b243d88f0db31974f7715376e Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Tue, 16 May 2017 14:45:38 -0400 Subject: [PATCH] iam.Policy: return empty set on missing key. Closes #3346. --- core/google/cloud/iam.py | 2 +- core/tests/unit/test_iam.py | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/core/google/cloud/iam.py b/core/google/cloud/iam.py index 653cebda1e71..eefc084a5f5c 100644 --- a/core/google/cloud/iam.py +++ b/core/google/cloud/iam.py @@ -59,7 +59,7 @@ class Policy(collections.MutableMapping): def __init__(self, etag=None, version=None): self.etag = etag self.version = version - self._bindings = {} + self._bindings = collections.defaultdict(set) def __iter__(self): return iter(self._bindings) diff --git a/core/tests/unit/test_iam.py b/core/tests/unit/test_iam.py index 42fac7c623c1..d076edd6eba9 100644 --- a/core/tests/unit/test_iam.py +++ b/core/tests/unit/test_iam.py @@ -52,8 +52,7 @@ def test_ctor_explicit(self): def test___getitem___miss(self): policy = self._make_one() - with self.assertRaises(KeyError): - policy['nonesuch'] + self.assertEqual(policy['nonesuch'], set()) def test___setitem__(self): USER = 'user:phred@example.com'