@@ -548,47 +548,47 @@ def func(self, *, __name=name): # __name needed to bind 'name'
548548
549549class DigestModTestCaseMixin (CreatorMixin , DigestMixin ):
550550
551- def make_digestmod_cases (self , func , digestmods ):
552- return [
553- * [
554- (func , args , dict (digestmod = digestmod ))
555- for args in [(self .key ,), (self .key , self .msg )]
556- for digestmod in digestmods
557- ],
558- * [
559- (func , (self .key ,), dict (msg = self .msg , digestmod = digestmod ))
560- for digestmod in digestmods
561- ],
562- ]
563-
564551 def assert_raises_missing_digestmod (self ):
565552 return self .assertRaisesRegex (TypeError , "Missing required.*digestmod" )
566553
567- def assert_raises_invalid_digestmod (self ):
554+ def assert_raises_unknown_digestmod (self ):
568555 return self .assertRaisesRegex (ValueError , "[Uu]nsupported.*" )
569556
570557 def test_constructor_missing_digestmod (self ):
571558 catcher = self .assert_raises_missing_digestmod
572559 self .do_test_constructor_missing_digestmod (catcher )
573560
574- def test_constructor_invalid_digestmod (self ):
575- catcher = self .assert_raises_invalid_digestmod
576- self .do_test_constructor_invalid_digestmod (catcher )
561+ def test_constructor_unknown_digestmod (self ):
562+ catcher = self .assert_raises_unknown_digestmod
563+ self .do_test_constructor_unknown_digestmod (catcher )
577564
578565 def do_test_constructor_missing_digestmod (self , catcher ):
579566 for func , args , kwds in self .cases_missing_digestmod_in_constructor ():
580567 with self .subTest (args = args , kwds = kwds ), catcher ():
581568 func (* args , ** kwds )
582569
583- def do_test_constructor_invalid_digestmod (self , catcher ):
584- for func , args , kwds in self .cases_invalid_digestmod_in_constructor ():
570+ def do_test_constructor_unknown_digestmod (self , catcher ):
571+ for func , args , kwds in self .cases_unknown_digestmod_in_constructor ():
585572 with self .subTest (args = args , kwds = kwds ), catcher ():
586573 func (* args , ** kwds )
587574
575+ def make_invalid_digestmod_cases (self , func , invalid_values ):
576+ """Generate cases for either missing or unknown digestmod tests."""
577+ key = b'unused key'
578+ msg = b'unused msg'
579+
580+ cases = []
581+ for digestmod in invalid_values :
582+ kwargs = {'digestmod' : digestmod }
583+ cases .append ((func , (key ,), kwargs ))
584+ cases .append ((func , (key , msg ), kwargs ))
585+ cases .append ((func , (key ,), kwargs | {'msg' : msg }))
586+ return cases
587+
588588 def cases_missing_digestmod_in_constructor (self ):
589589 raise NotImplementedError
590590
591- def cases_invalid_digestmod_in_constructor (self ):
591+ def cases_unknown_digestmod_in_constructor (self ):
592592 raise NotImplementedError
593593
594594
@@ -633,12 +633,13 @@ class PyConstructorBaseMixin(PyModuleMixin,
633633 ConstructorTestCaseMixin ):
634634
635635 def cases_missing_digestmod_in_constructor (self ):
636- func , key , msg = self .hmac_new , b'key' , b'msg'
637- cases = self .make_digestmod_cases (func , ['' , None , False ])
638- return [* cases , (func , (key ,), {}), (func , (key , msg ), {})]
636+ func , key , msg = self .hmac_new , b'unused key' , b'unused msg'
637+ cases = self .make_invalid_digestmod_cases (func , ['' , None , False ])
638+ cases .extend ([(func , (key ,), {}), (func , (key , msg ), {})])
639+ return cases
639640
640- def cases_invalid_digestmod_in_constructor (self ):
641- return self .make_digestmod_cases (self .hmac_new , ['unknown' ])
641+ def cases_unknown_digestmod_in_constructor (self ):
642+ return self .make_invalid_digestmod_cases (self .hmac_new , ['unknown' ])
642643
643644 @requires_builtin_sha2 ()
644645 def test_constructor_with_module (self ):
@@ -695,16 +696,17 @@ def assert_digestmod_error(self):
695696 def test_constructor_missing_digestmod (self ):
696697 self .do_test_constructor_missing_digestmod (self .assert_digestmod_error )
697698
698- def test_constructor_invalid_digestmod (self ):
699- self .do_test_constructor_invalid_digestmod (self .assert_digestmod_error )
699+ def test_constructor_unknown_digestmod (self ):
700+ self .do_test_constructor_unknown_digestmod (self .assert_digestmod_error )
700701
701702 def cases_missing_digestmod_in_constructor (self ):
702- func , key , msg = self .hmac_new , b'key' , b'msg'
703- cases = self .make_digestmod_cases (func , ['' , None , False ])
704- return [* cases , (func , (key ,), {}), (func , (key , msg ), {})]
703+ func , key , msg = self .hmac_new , b'unused key' , b'unused msg'
704+ cases = self .make_invalid_digestmod_cases (func , ['' , None , False ])
705+ cases .extend ([(func , (key ,), {}), (func , (key , msg ), {})])
706+ return cases
705707
706- def cases_invalid_digestmod_in_constructor (self ):
707- return self .make_digestmod_cases (self .hmac_new , ['unknown' , 1234 ])
708+ def cases_unknown_digestmod_in_constructor (self ):
709+ return self .make_invalid_digestmod_cases (self .hmac_new , ['unknown' , 1234 ])
708710
709711
710712class OpenSSLConstructorTestCase (ThroughOpenSSLAPIMixin ,
0 commit comments