diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2019-02-21 04:16:14 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2019-02-21 04:16:14 +0000 |
commit | dca2c7c42822c75da0dcda8434eae82fabe27f05 (patch) | |
tree | 3eb572c3ebc62886710867852e6df4e336e9bab7 /tests/test_pem.py | |
parent | 57b309b360542fd9b6594bf2240896b6698c8ae1 (diff) | |
parent | ea37697b04e123324d3fc365a0770b7f21371615 (diff) | |
download | rsa-dca2c7c42822c75da0dcda8434eae82fabe27f05.tar.gz |
Snap for 5325928 from ea37697b04e123324d3fc365a0770b7f21371615 to qt-release
Change-Id: I7fba457658db94a0c9140583f960f4a6583e4a9a
Diffstat (limited to 'tests/test_pem.py')
-rw-r--r-- | tests/test_pem.py | 34 |
1 files changed, 31 insertions, 3 deletions
diff --git a/tests/test_pem.py b/tests/test_pem.py index 952ec79..5fb9600 100644 --- a/tests/test_pem.py +++ b/tests/test_pem.py @@ -17,7 +17,7 @@ import unittest -from rsa._compat import b +from rsa._compat import is_bytes from rsa.pem import _markers import rsa.key @@ -49,8 +49,8 @@ prime2 = 88103681619592083641803383393198542599284510949756076218404908654323473 class TestMarkers(unittest.TestCase): def test_values(self): self.assertEqual(_markers('RSA PRIVATE KEY'), - (b('-----BEGIN RSA PRIVATE KEY-----'), - b('-----END RSA PRIVATE KEY-----'))) + (b'-----BEGIN RSA PRIVATE KEY-----', + b'-----END RSA PRIVATE KEY-----')) class TestBytesAndStrings(unittest.TestCase): @@ -72,3 +72,31 @@ class TestBytesAndStrings(unittest.TestCase): key = rsa.key.PrivateKey.load_pkcs1(private_key_pem.encode('ascii')) self.assertEqual(prime1, key.p) self.assertEqual(prime2, key.q) + + +class TestByteOutput(unittest.TestCase): + """Tests that PEM and DER are returned as bytes.""" + + def test_bytes_public(self): + key = rsa.key.PublicKey.load_pkcs1_openssl_pem(public_key_pem) + self.assertTrue(is_bytes(key.save_pkcs1(format='DER'))) + self.assertTrue(is_bytes(key.save_pkcs1(format='PEM'))) + + def test_bytes_private(self): + key = rsa.key.PrivateKey.load_pkcs1(private_key_pem) + self.assertTrue(is_bytes(key.save_pkcs1(format='DER'))) + self.assertTrue(is_bytes(key.save_pkcs1(format='PEM'))) + + +class TestByteInput(unittest.TestCase): + """Tests that PEM and DER can be loaded from bytes.""" + + def test_bytes_public(self): + key = rsa.key.PublicKey.load_pkcs1_openssl_pem(public_key_pem.encode('ascii')) + self.assertTrue(is_bytes(key.save_pkcs1(format='DER'))) + self.assertTrue(is_bytes(key.save_pkcs1(format='PEM'))) + + def test_bytes_private(self): + key = rsa.key.PrivateKey.load_pkcs1(private_key_pem.encode('ascii')) + self.assertTrue(is_bytes(key.save_pkcs1(format='DER'))) + self.assertTrue(is_bytes(key.save_pkcs1(format='PEM'))) |