From 3fe55c28b409aef7d67f33f71c993b56521ba4eb Mon Sep 17 00:00:00 2001 From: larkee Date: Mon, 22 Mar 2021 17:05:06 +1100 Subject: [PATCH 1/3] refactor: remove encryption_config property from Backup --- google/cloud/spanner_v1/backup.py | 14 +++----------- tests/system/test_system.py | 5 ++++- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/google/cloud/spanner_v1/backup.py b/google/cloud/spanner_v1/backup.py index 9068816705..dba7ba1fcb 100644 --- a/google/cloud/spanner_v1/backup.py +++ b/google/cloud/spanner_v1/backup.py @@ -185,14 +185,6 @@ def encryption_info(self): """ return self._encryption_info - @property - def encryption_config(self): - """Encryption config for this database. - :rtype: :class:`~google.cloud.spanner_admin_instance_v1.types.CreateBackupEncryptionConfig` - :returns: an object representing the encryption config for this database - """ - return self._encryption_config - @classmethod def from_pb(cls, backup_pb, instance): """Create an instance of this class from a protobuf message. @@ -245,9 +237,9 @@ def create(self): if not self._database: raise ValueError("database not set") if ( - self.encryption_config - and self.encryption_config.kms_key_name - and self.encryption_config.encryption_type + self._encryption_config + and self._encryption_config.kms_key_name + and self._encryption_config.encryption_type != CreateBackupEncryptionConfig.EncryptionType.CUSTOMER_MANAGED_ENCRYPTION ): raise ValueError("kms_key_name only used with CUSTOMER_MANAGED_ENCRYPTION") diff --git a/tests/system/test_system.py b/tests/system/test_system.py index 8be207ef06..e97c68db5b 100644 --- a/tests/system/test_system.py +++ b/tests/system/test_system.py @@ -741,6 +741,7 @@ def test_backup_workflow(self): from google.cloud.spanner_admin_database_v1 import ( CreateBackupEncryptionConfig, EncryptionConfig, + EncryptionInfo, RestoreDatabaseEncryptionConfig, ) from datetime import datetime @@ -780,7 +781,9 @@ def test_backup_workflow(self): self.assertEqual(self.database_version_time, backup.version_time) self.assertIsNotNone(backup.size_bytes) self.assertIsNotNone(backup.state) - self.assertEqual(encryption_config, backup.encryption_config) + self.assertEqual( + EncryptionInfo.Type.GOOGLE_DEFAULT_ENCRYPTION, backup.encryption_info + ) # Update with valid argument. valid_expire_time = datetime.utcnow() + timedelta(days=7) From ee39d1c3fcff021886af4f4e1afcf8b5ccc96f83 Mon Sep 17 00:00:00 2001 From: larkee Date: Mon, 22 Mar 2021 18:17:45 +1100 Subject: [PATCH 2/3] test: only assert encryption type --- tests/system/test_system.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/system/test_system.py b/tests/system/test_system.py index e97c68db5b..7a7630c0d9 100644 --- a/tests/system/test_system.py +++ b/tests/system/test_system.py @@ -782,7 +782,8 @@ def test_backup_workflow(self): self.assertIsNotNone(backup.size_bytes) self.assertIsNotNone(backup.state) self.assertEqual( - EncryptionInfo.Type.GOOGLE_DEFAULT_ENCRYPTION, backup.encryption_info + EncryptionInfo.Type.GOOGLE_DEFAULT_ENCRYPTION, + backup.encryption_info.encryption_type, ) # Update with valid argument. From 4c495df0e76f3a863f27c6b79d210afd0b953381 Mon Sep 17 00:00:00 2001 From: larkee Date: Mon, 22 Mar 2021 19:45:50 +1100 Subject: [PATCH 3/3] test: remove references to encryption_config property --- tests/unit/test_backup.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/unit/test_backup.py b/tests/unit/test_backup.py index 335ccb564b..e80e455dbf 100644 --- a/tests/unit/test_backup.py +++ b/tests/unit/test_backup.py @@ -84,7 +84,7 @@ def test_ctor_non_defaults(self): self.assertEqual(backup._database, self.DATABASE_NAME) self.assertIsNotNone(backup._expire_time) self.assertIs(backup._expire_time, timestamp) - self.assertEqual(backup.encryption_config, encryption_config) + self.assertEqual(backup._encryption_config, encryption_config) def test_ctor_w_encryption_config_dict(self): from google.cloud.spanner_admin_database_v1 import CreateBackupEncryptionConfig @@ -107,7 +107,7 @@ def test_ctor_w_encryption_config_dict(self): self.assertEqual(backup._database, self.DATABASE_NAME) self.assertIsNotNone(backup._expire_time) self.assertIs(backup._expire_time, timestamp) - self.assertEqual(backup.encryption_config, expected_encryption_config) + self.assertEqual(backup._encryption_config, expected_encryption_config) def test_from_pb_project_mismatch(self): from google.cloud.spanner_admin_database_v1 import Backup @@ -223,7 +223,7 @@ def test_encryption_config_property(self): encryption_type=CreateBackupEncryptionConfig.EncryptionType.CUSTOMER_MANAGED_ENCRYPTION, kms_key_name="kms_key_name", ) - self.assertEqual(backup.encryption_config, expected) + self.assertEqual(backup._encryption_config, expected) def test_create_grpc_error(self): from google.api_core.exceptions import GoogleAPICallError