mirror of
https://github.com/python/cpython.git
synced 2025-07-29 06:05:00 +00:00
Adds the hashlib.algorithms attribute. See issue7418.
This commit is contained in:
parent
9e5d1327f8
commit
e6390a1503
3 changed files with 17 additions and 1 deletions
|
@ -74,6 +74,15 @@ Using :func:`new` with an algorithm provided by OpenSSL:
|
||||||
>>> h.hexdigest()
|
>>> h.hexdigest()
|
||||||
'cc4a5ce1b3df48aec5d22d1f16b894a0b894eccc'
|
'cc4a5ce1b3df48aec5d22d1f16b894a0b894eccc'
|
||||||
|
|
||||||
|
This module provides the following constant attribute:
|
||||||
|
|
||||||
|
.. data:: hashlib.algorithms
|
||||||
|
|
||||||
|
A tuple providing the names of the hash algorithms guaranteed to be
|
||||||
|
supported by this module.
|
||||||
|
|
||||||
|
.. versionadded:: 2.7
|
||||||
|
|
||||||
The following values are provided as constant attributes of the hash objects
|
The following values are provided as constant attributes of the hash objects
|
||||||
returned by the constructors:
|
returned by the constructors:
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,9 @@ More condensed:
|
||||||
# always available algorithm is added.
|
# always available algorithm is added.
|
||||||
__always_supported = ('md5', 'sha1', 'sha224', 'sha256', 'sha384', 'sha512')
|
__always_supported = ('md5', 'sha1', 'sha224', 'sha256', 'sha384', 'sha512')
|
||||||
|
|
||||||
__all__ = __always_supported + ('new',)
|
algorithms = __always_supported
|
||||||
|
|
||||||
|
__all__ = __always_supported + ('new', 'algorithms')
|
||||||
|
|
||||||
|
|
||||||
def __get_builtin_constructor(name):
|
def __get_builtin_constructor(name):
|
||||||
|
|
|
@ -102,6 +102,11 @@ class HashLibTestCase(unittest.TestCase):
|
||||||
c = cons(a)
|
c = cons(a)
|
||||||
c.hexdigest()
|
c.hexdigest()
|
||||||
|
|
||||||
|
def test_algorithms_attribute(self):
|
||||||
|
self.assertEqual(hashlib.algorithms,
|
||||||
|
tuple([_algo for _algo in self.supported_hash_names if
|
||||||
|
_algo.islower()]))
|
||||||
|
|
||||||
def test_unknown_hash(self):
|
def test_unknown_hash(self):
|
||||||
try:
|
try:
|
||||||
hashlib.new('spam spam spam spam spam')
|
hashlib.new('spam spam spam spam spam')
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue