@@ -120,13 +120,14 @@ def setUpClass(cls):
120120 "-----BEGIN PUBLIC KEY-----\n "
121121 "MEkwEwYHKoZIzj0CAQYIKoZIzj0DAQEDMgAEuIF30ITvF/XkVjlAgCg2D59ZtKTX\n "
122122 "Jk5i2gZR3OR6NaTFtFz1FZNCOotVe5wgmfNs\n "
123- "-----END PUBLIC KEY-----\n " )
124-
123+ "-----END PUBLIC KEY-----\n " )
124+ cls .key_pem = key_str
125+
125126 cls .key_bytes = unpem (key_str )
126127 assert isinstance (cls .key_bytes , bytes )
127128 cls .vk = VerifyingKey .from_pem (key_str )
128129 cls .sk = SigningKey .from_pem (prv_key_str )
129-
130+
130131 key_str = (
131132 "-----BEGIN PUBLIC KEY-----\n "
132133 "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE4H3iRbG4TSrsSRb/gusPQB/4YcN8\n "
@@ -135,6 +136,16 @@ def setUpClass(cls):
135136 )
136137 cls .vk2 = VerifyingKey .from_pem (key_str )
137138
139+ def test_custom_hashfunc (self ):
140+ vk = VerifyingKey .from_der (self .key_bytes , hashlib .sha256 )
141+
142+ self .assertIs (vk .default_hashfunc , hashlib .sha256 )
143+
144+ def test_from_pem_with_custom_hashfunc (self ):
145+ vk = VerifyingKey .from_pem (self .key_pem , hashlib .sha256 )
146+
147+ self .assertIs (vk .default_hashfunc , hashlib .sha256 )
148+
138149 def test_bytes (self ):
139150 vk = VerifyingKey .from_der (self .key_bytes )
140151
@@ -166,14 +177,14 @@ def test_array_array_of_bytes_memoryview(self):
166177 vk = VerifyingKey .from_der (buffer (arr ))
167178
168179 self .assertEqual (self .vk .to_string (), vk .to_string ())
169-
170- def test_equality_on_verifying_keys (self ):
180+
181+ def test_equality_on_verifying_keys (self ):
171182 self .assertEqual (self .vk , self .sk .get_verifying_key ())
172-
173- def test_inequality_on_verifying_keys (self ):
183+
184+ def test_inequality_on_verifying_keys (self ):
174185 self .assertNotEqual (self .vk , self .vk2 )
175-
176- def test_inequality_on_verifying_keys_not_implemented (self ):
186+
187+ def test_inequality_on_verifying_keys_not_implemented (self ):
177188 self .assertNotEqual (self .vk , None )
178189
179190
0 commit comments