Skip to content

Commit a070cb6

Browse files
author
Andres Sanchez
committed
Migrate unit/test_provides_kms_master_key.py from unittest to pytest
1 parent 3e3e701 commit a070cb6

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

test/unit/test_providers_kms_master_key.py

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,9 @@
1111
# ANY KIND, either express or implied. See the License for the specific
1212
# language governing permissions and limitations under the License.
1313
"""Unit test suite for aws_encryption_sdk.key_providers.kms.KMSMasterKey"""
14-
import unittest
15-
1614
import botocore.client
1715
import pytest
18-
import six
16+
1917
from botocore.exceptions import ClientError
2018
from mock import MagicMock, patch, sentinel
2119

@@ -30,8 +28,9 @@
3028
pytestmark = [pytest.mark.unit, pytest.mark.local]
3129

3230

33-
class TestKMSMasterKey(unittest.TestCase):
34-
def setUp(self):
31+
class TestKMSMasterKey(object):
32+
@pytest.fixture(autouse=True)
33+
def apply_fixture(self):
3534
self.mock_client = MagicMock()
3635
self.mock_client.__class__ = botocore.client.BaseClient
3736
self.mock_client.generate_data_key.return_value = {
@@ -111,14 +110,16 @@ def test_generate_data_key_with_grant_tokens(self):
111110
def test_generate_data_key_unsuccessful_clienterror(self):
112111
self.mock_client.generate_data_key.side_effect = ClientError({"Error": {}}, "This is an error!")
113112
test = KMSMasterKey(config=self.mock_kms_mkc_3)
114-
with six.assertRaisesRegex(self, GenerateKeyError, "Master Key .* unable to generate data key"):
113+
with pytest.raises(GenerateKeyError) as excinfo:
115114
test._generate_data_key(self.mock_algorithm)
115+
excinfo.match("Master Key .* unable to generate data key")
116116

117117
def test_generate_data_key_unsuccessful_keyerror(self):
118118
self.mock_client.generate_data_key.side_effect = KeyError
119119
test = KMSMasterKey(config=self.mock_kms_mkc_3)
120-
with six.assertRaisesRegex(self, GenerateKeyError, "Master Key .* unable to generate data key"):
120+
with pytest.raises(GenerateKeyError) as excinfo:
121121
test._generate_data_key(self.mock_algorithm)
122+
excinfo.match("Master Key .* unable to generate data key")
122123

123124
def test_encrypt_data_key(self):
124125
test = KMSMasterKey(config=self.mock_kms_mkc_3)
@@ -146,14 +147,16 @@ def test_encrypt_data_key_with_grant_tokens(self):
146147
def test_encrypt_data_key_unsuccessful_clienterror(self):
147148
self.mock_client.encrypt.side_effect = ClientError({"Error": {}}, "This is an error!")
148149
test = KMSMasterKey(config=self.mock_kms_mkc_3)
149-
with six.assertRaisesRegex(self, EncryptKeyError, "Master Key .* unable to encrypt data key"):
150+
with pytest.raises(EncryptKeyError) as excinfo:
150151
test._encrypt_data_key(self.mock_data_key, self.mock_algorithm)
152+
excinfo.match("Master Key .* unable to encrypt data key")
151153

152154
def test_encrypt_data_key_unsuccessful_keyerror(self):
153155
self.mock_client.encrypt.side_effect = KeyError
154156
test = KMSMasterKey(config=self.mock_kms_mkc_3)
155-
with six.assertRaisesRegex(self, EncryptKeyError, "Master Key .* unable to encrypt data key"):
157+
with pytest.raises(EncryptKeyError) as excinfo:
156158
test._encrypt_data_key(self.mock_data_key, self.mock_algorithm)
159+
excinfo.match("Master Key .* unable to encrypt data key")
157160

158161
def test_decrypt_data_key(self):
159162
test = KMSMasterKey(config=self.mock_kms_mkc_1)
@@ -186,11 +189,13 @@ def test_decrypt_data_key_with_grant_tokens(self):
186189
def test_decrypt_data_key_unsuccessful_clienterror(self):
187190
self.mock_client.decrypt.side_effect = ClientError({"Error": {}}, "This is an error!")
188191
test = KMSMasterKey(config=self.mock_kms_mkc_3)
189-
with six.assertRaisesRegex(self, DecryptKeyError, "Master Key .* unable to decrypt data key"):
192+
with pytest.raises(DecryptKeyError) as excinfo:
190193
test._decrypt_data_key(encrypted_data_key=self.mock_encrypted_data_key, algorithm=sentinel.algorithm)
194+
excinfo.match("Master Key .* unable to decrypt data key")
191195

192196
def test_decrypt_data_key_unsuccessful_keyerror(self):
193197
self.mock_client.decrypt.side_effect = KeyError
194198
test = KMSMasterKey(config=self.mock_kms_mkc_3)
195-
with six.assertRaisesRegex(self, DecryptKeyError, "Master Key .* unable to decrypt data key"):
199+
with pytest.raises(DecryptKeyError) as excinfo:
196200
test._decrypt_data_key(encrypted_data_key=self.mock_encrypted_data_key, algorithm=sentinel.algorithm)
201+
excinfo.match("Master Key .* unable to decrypt data key")

0 commit comments

Comments
 (0)