From 2c0856178745602e6f9175b0daca5e10563def85 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Mon, 5 Nov 2018 11:49:48 -0500 Subject: [PATCH 1/2] Accomodate new back-end restriction on retention period. Closes #6368. --- storage/google/cloud/storage/bucket.py | 5 +++-- storage/tests/unit/test_bucket.py | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/storage/google/cloud/storage/bucket.py b/storage/google/cloud/storage/bucket.py index 9829f3b6d7c9..419063f7910a 100644 --- a/storage/google/cloud/storage/bucket.py +++ b/storage/google/cloud/storage/bucket.py @@ -1347,8 +1347,9 @@ def retention_period(self, value): """ policy = self._properties.setdefault('retentionPolicy', {}) if value is not None: - value = str(value) - policy['retentionPeriod'] = value + policy['retentionPeriod'] = str(value) + else: + policy = None self._patch_property('retentionPolicy', policy) @property diff --git a/storage/tests/unit/test_bucket.py b/storage/tests/unit/test_bucket.py index 8ee3fafd8239..c04d83c17768 100644 --- a/storage/tests/unit/test_bucket.py +++ b/storage/tests/unit/test_bucket.py @@ -1573,13 +1573,14 @@ def test_retention_period_getter(self): def test_retention_period_setter_w_none(self): period = 86400 * 100 # 100 days bucket = self._make_one() - policy = bucket._properties['retentionPolicy'] = {} - policy['retentionPeriod'] = period + policy = bucket._properties['retentionPolicy'] = { + 'retentionPeriod': period, + } bucket.retention_period = None self.assertIsNone( - bucket._properties['retentionPolicy']['retentionPeriod']) + bucket._properties['retentionPolicy']) def test_retention_period_setter_w_int(self): period = 86400 * 100 # 100 days From 00334e92fb35b838c28fcce37a12382b0ce09501 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Mon, 5 Nov 2018 12:57:34 -0500 Subject: [PATCH 2/2] Lint --- storage/tests/unit/test_bucket.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/tests/unit/test_bucket.py b/storage/tests/unit/test_bucket.py index c04d83c17768..abb7488c6f7a 100644 --- a/storage/tests/unit/test_bucket.py +++ b/storage/tests/unit/test_bucket.py @@ -1573,7 +1573,7 @@ def test_retention_period_getter(self): def test_retention_period_setter_w_none(self): period = 86400 * 100 # 100 days bucket = self._make_one() - policy = bucket._properties['retentionPolicy'] = { + bucket._properties['retentionPolicy'] = { 'retentionPeriod': period, }