(original) (raw)
changeset: 87343:de65df13ed50 user: Christian Heimes christian@cheimes.de date: Fri Nov 22 16:13:55 2013 +0100 files: Lib/test/test_ssl.py description: Issue #17134: check certs of CA and ROOT system store diff -r d71251d9fbbe -r de65df13ed50 Lib/test/test_ssl.py --- a/Lib/test/test_ssl.py Sat Nov 23 00:57:00 2013 +1000 +++ b/Lib/test/test_ssl.py Fri Nov 22 16:13:55 2013 +0100 @@ -536,21 +536,22 @@ self.assertRaises(TypeError, ssl.enum_certificates) self.assertRaises(WindowsError, ssl.enum_certificates, "") - names = set() - ca = ssl.enum_certificates("CA") - self.assertIsInstance(ca, list) - for element in ca: - self.assertIsInstance(element, tuple) - self.assertEqual(len(element), 3) - cert, enc, trust = element - self.assertIsInstance(cert, bytes) - self.assertIn(enc, {"x509_asn", "pkcs_7_asn"}) - self.assertIsInstance(trust, (set, bool)) - if isinstance(trust, set): - names.update(trust) + trust_oids = set() + for storename in ("CA", "ROOT"): + store = ssl.enum_certificates(storename) + self.assertIsInstance(store, list) + for element in store: + self.assertIsInstance(element, tuple) + self.assertEqual(len(element), 3) + cert, enc, trust = element + self.assertIsInstance(cert, bytes) + self.assertIn(enc, {"x509_asn", "pkcs_7_asn"}) + self.assertIsInstance(trust, (set, bool)) + if isinstance(trust, set): + trust_oids.update(trust) serverAuth = "1.3.6.1.5.5.7.3.1" - self.assertIn(serverAuth, names) + self.assertIn(serverAuth, trust_oids) @unittest.skipUnless(sys.platform == "win32", "Windows specific") def test_enum_crls(self): /christian@cheimes.de