mirror of
https://github.com/python/cpython.git
synced 2025-08-31 14:07:50 +00:00
bpo-33729: Fix issues with arguments parsing in hashlib. (GH-8346)
* help(hashlib) didn't work because of incorrect module name in blake2b and blake2s classes. * Constructors blake2*(), sha3_*(), shake_*() and keccak_*() incorrectly accepted keyword argument "string" for binary data, but documented as accepting the "data" keyword argument. Now this parameter is positional-only. * Keyword-only parameters in blake2b() and blake2s() were not documented as keyword-only. * Default value for some parameters of blake2b() and blake2s() was None, which is not acceptable value. * The length argument for shake_*.digest() was wrapped out to 32 bits. * The argument for shake_128.digest() and shake_128.hexdigest() was not positional-only as intended. * TypeError messages for incorrect arguments in all constructors sha3_*(), shake_*() and keccak_*() incorrectly referred to sha3_224. Also made the following enhancements: * More accurately specified input and result types for strings, bytes and bytes-like objects. * Unified positional parameter names for update() and constructors. * Improved formatting.
This commit is contained in:
parent
4b8a7f51da
commit
f1d36d8efa
12 changed files with 213 additions and 231 deletions
|
@ -568,8 +568,12 @@ class HashLibTestCase(unittest.TestCase):
|
|||
self.assertRaises(ValueError, constructor, node_offset=-1)
|
||||
self.assertRaises(OverflowError, constructor, node_offset=max_offset+1)
|
||||
|
||||
self.assertRaises(TypeError, constructor, data=b'')
|
||||
self.assertRaises(TypeError, constructor, string=b'')
|
||||
self.assertRaises(TypeError, constructor, '')
|
||||
|
||||
constructor(
|
||||
string=b'',
|
||||
b'',
|
||||
key=b'',
|
||||
salt=b'',
|
||||
person=b'',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue