From a46c220edc5cf716d0b71eb80ac29ecdb4ebb430 Mon Sep 17 00:00:00 2001 From: stratakis Date: Fri, 4 Jun 2021 18:47:59 +0200 Subject: bpo-44048: Fix two hashlib test cases under FIPS mode (GH-26470) test_disallow_instantiation and test_readonly_types try to test all the available digests, however under FIPS mode, while the algorithms are available, trying to use them will fail with a ValueError. --- Lib/test/test_hashlib.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_hashlib.py b/Lib/test/test_hashlib.py index e419b38..1623bf3 100644 --- a/Lib/test/test_hashlib.py +++ b/Lib/test/test_hashlib.py @@ -909,7 +909,11 @@ class HashLibTestCase(unittest.TestCase): continue # all other types have DISALLOW_INSTANTIATION for constructor in constructors: - h = constructor() + # In FIPS mode some algorithms are not available raising ValueError + try: + h = constructor() + except ValueError: + continue with self.subTest(constructor=constructor): support.check_disallow_instantiation(self, type(h)) @@ -923,7 +927,11 @@ class HashLibTestCase(unittest.TestCase): for algorithm, constructors in self.constructors_to_test.items(): # all other types have DISALLOW_INSTANTIATION for constructor in constructors: - hash_type = type(constructor()) + # In FIPS mode some algorithms are not available raising ValueError + try: + hash_type = type(constructor()) + except ValueError: + continue with self.subTest(hash_type=hash_type): with self.assertRaisesRegex(TypeError, "immutable type"): hash_type.value = False -- cgit v0.12