From 90b27ff9cf2b9fe01a2585a8a8c2d20c52e8c4ea Mon Sep 17 00:00:00 2001 From: Jakub Warmuz Date: Tue, 7 Jul 2015 17:00:08 +0000 Subject: [PATCH] ComparableX509Test for cert and CSR --- acme/jose/util_test.py | 46 +++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 18 deletions(-) diff --git a/acme/jose/util_test.py b/acme/jose/util_test.py index 8cb10e62a..f29b0792f 100644 --- a/acme/jose/util_test.py +++ b/acme/jose/util_test.py @@ -14,32 +14,42 @@ class ComparableX509Test(unittest.TestCase): def setUp(self): from acme.jose.util import ComparableX509 - def load_cert(): # pylint: disable=missing-docstring - return ComparableX509(OpenSSL.crypto.load_certificate_request( - OpenSSL.crypto.FILETYPE_ASN1, pkg_resources.resource_string( - __name__, os.path.join('testdata', 'csr.der')))) - self.cert = load_cert() - self.cert_same = load_cert() - self.cert2 = ComparableX509(OpenSSL.crypto.load_certificate_request( - OpenSSL.crypto.FILETYPE_PEM, pkg_resources.resource_string( - 'letsencrypt.tests', os.path.join('testdata', 'csr-san.pem')))) + def _load(method, filename): # pylint: disable=missing-docstring + return ComparableX509(method( + OpenSSL.crypto.FILETYPE_PEM, pkg_resources.resource_string( + 'letsencrypt.tests', os.path.join('testdata', filename)))) + + self.req1 = _load(OpenSSL.crypto.load_certificate_request, 'csr.pem') + self.req2 = _load(OpenSSL.crypto.load_certificate_request, 'csr.pem') + self.req_other = _load(OpenSSL.crypto.load_certificate_request, 'csr-san.pem') + + self.cert1 = _load(OpenSSL.crypto.load_certificate, 'cert.pem') + self.cert2 = _load(OpenSSL.crypto.load_certificate, 'cert.pem') + self.cert_other = _load(OpenSSL.crypto.load_certificate, 'cert-san.pem') def test_eq(self): - self.assertEqual(self.cert, self.cert_same) - - def test_eq_wrong_types(self): - self.assertNotEqual(self.cert, 5) + self.assertEqual(self.req1, self.req2) + self.assertEqual(self.cert1, self.cert2) def test_ne(self): - self.assertNotEqual(self.cert, self.cert2) + self.assertNotEqual(self.req1, self.req_other) + self.assertNotEqual(self.cert1, self.cert_other) + + def test_ne_wrong_types(self): + self.assertNotEqual(self.req1, 5) + self.assertNotEqual(self.cert1, 5) def test_hash(self): - self.assertEqual(hash(self.cert), hash(self.cert_same)) - self.assertNotEqual(hash(self.cert), hash(self.cert2)) + self.assertEqual(hash(self.req1), hash(self.req2)) + self.assertNotEqual(hash(self.req1), hash(self.req_other)) + + self.assertEqual(hash(self.cert1), hash(self.cert2)) + self.assertNotEqual(hash(self.cert1), hash(self.cert_other)) def test_repr(self): - self.assertTrue(repr(self.cert).startswith( - '