diff options
author | Alex Gaynor <alex.gaynor@gmail.com> | 2014-11-26 23:57:21 -0600 |
---|---|---|
committer | Alex Gaynor <alex.gaynor@gmail.com> | 2014-11-26 23:57:21 -0600 |
commit | a28874863a2cc76045e5526ae2b701b9e7733d02 (patch) | |
tree | 08f1d6554d90061981c03ffc7bdd030c1389dc8e /tests | |
parent | 579b1381d7679b6452b6d07fba74bd81003d3056 (diff) | |
parent | ae8156f1812c28e0265ed3215291be469aa4fd05 (diff) | |
download | cryptography-a28874863a2cc76045e5526ae2b701b9e7733d02.tar.gz cryptography-a28874863a2cc76045e5526ae2b701b9e7733d02.tar.bz2 cryptography-a28874863a2cc76045e5526ae2b701b9e7733d02.zip |
Merge pull request #1496 from reaperhulk/x509-multibackend
X509Backend support in multibackend
Diffstat (limited to 'tests')
-rw-r--r-- | tests/hazmat/backends/test_multibackend.py | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/tests/hazmat/backends/test_multibackend.py b/tests/hazmat/backends/test_multibackend.py index 112247cb..03aa3cd8 100644 --- a/tests/hazmat/backends/test_multibackend.py +++ b/tests/hazmat/backends/test_multibackend.py @@ -14,7 +14,7 @@ from cryptography.hazmat.backends.interfaces import ( CMACBackend, CipherBackend, DSABackend, EllipticCurveBackend, HMACBackend, HashBackend, PBKDF2HMACBackend, PEMSerializationBackend, PKCS8SerializationBackend, RSABackend, - TraditionalOpenSSLSerializationBackend + TraditionalOpenSSLSerializationBackend, X509Backend ) from cryptography.hazmat.backends.multibackend import MultiBackend from cryptography.hazmat.primitives import cmac, hashes, hmac @@ -203,6 +203,15 @@ class DummyPEMSerializationBackend(object): pass +@utils.register_interface(X509Backend) +class DummyX509Backend(object): + def load_pem_x509_certificate(self, data): + pass + + def load_der_x509_certificate(self, data): + pass + + class TestMultiBackend(object): def test_ciphers(self): backend = MultiBackend([ @@ -522,3 +531,15 @@ class TestMultiBackend(object): backend.load_pem_private_key(b"keydata", None) with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_SERIALIZATION): backend.load_pem_public_key(b"keydata") + + def test_x509_backend(self): + backend = MultiBackend([DummyX509Backend()]) + + backend.load_pem_x509_certificate(b"certdata") + backend.load_der_x509_certificate(b"certdata") + + backend = MultiBackend([]) + with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_X509): + backend.load_pem_x509_certificate(b"certdata") + with raises_unsupported_algorithm(_Reasons.UNSUPPORTED_X509): + backend.load_der_x509_certificate(b"certdata") |