diff --git a/Lib/test/test_hashlib.py b/Lib/test/test_hashlib.py index c7c128e75568e2..a515d3a3469330 100644 --- a/Lib/test/test_hashlib.py +++ b/Lib/test/test_hashlib.py @@ -901,36 +901,18 @@ def test_get_fips_mode(self): if fips_mode is not None: self.assertIsInstance(fips_mode, int) - def test_disallow_instanciation(self): - constructors = [] - try: - import _md5 - constructors.append(_md5.md5) - except ImportError: - pass - try: - import _sha1 - constructors.append(_sha1.sha1) - except ImportError: - pass - try: - import _sha256 - constructors.append(_sha256.sha224) - constructors.append(_sha256.sha256) - except ImportError: - pass - try: - import _sha512 - constructors.append(_sha512.sha384) - constructors.append(_sha512.sha512) - except ImportError: - pass - - for constructor in constructors: - h = constructor() - with self.subTest(constructor=constructor): - hash_type = type(h) - self.assertRaises(TypeError, hash_type) + @support.cpython_only + def test_disallow_instantiation(self): + for algorithm, constructors in self.constructors_to_test.items(): + if algorithm.startswith(("sha3_", "shake", "blake")): + # _sha3 and _blake types can be instantiated + continue + # all other types have DISALLOW_INSTANTIATION + for constructor in constructors: + h = constructor() + with self.subTest(constructor=constructor): + hash_type = type(h) + self.assertRaises(TypeError, hash_type) @unittest.skipUnless(HASH is not None, 'need _hashlib') def test_hash_disallow_instanciation(self): pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy