Issue #15225: improve error message when hmac is passed a wrong key type.
Patch by Marc Abramowitz.
This commit is contained in:
parent
9c7817e9ee
commit
24ef3e967f
|
@ -35,7 +35,7 @@ class HMAC:
|
|||
"""
|
||||
|
||||
if not isinstance(key, bytes):
|
||||
raise TypeError("expected bytes, but got %r" % type(key).__name__)
|
||||
raise TypeError("key: expected bytes, but got %r" % type(key).__name__)
|
||||
|
||||
if digestmod is None:
|
||||
import hashlib
|
||||
|
|
|
@ -234,6 +234,18 @@ class ConstructorTestCase(unittest.TestCase):
|
|||
except:
|
||||
self.fail("Standard constructor call raised exception.")
|
||||
|
||||
def test_with_str_key(self):
|
||||
# Pass a key of type str, which is an error, because it expects a key
|
||||
# of type bytes
|
||||
with self.assertRaises(TypeError):
|
||||
h = hmac.HMAC("key")
|
||||
|
||||
def test_dot_new_with_str_key(self):
|
||||
# Pass a key of type str, which is an error, because it expects a key
|
||||
# of type bytes
|
||||
with self.assertRaises(TypeError):
|
||||
h = hmac.new("key")
|
||||
|
||||
def test_withtext(self):
|
||||
# Constructor call with text.
|
||||
try:
|
||||
|
|
Loading…
Reference in New Issue