summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorGregory P. Smith <greg@mad-scientist.com>2010-03-01 02:01:47 (GMT)
committerGregory P. Smith <greg@mad-scientist.com>2010-03-01 02:01:47 (GMT)
commite6390a15033b9a93d345338d06b220542687b3fd (patch)
tree6105ab6804da46cd2e3ea0534a60425dea1c1bcb /Lib
parent9e5d1327f8a6f3a266b76118e0c660c7bcb12ce9 (diff)
downloadcpython-e6390a15033b9a93d345338d06b220542687b3fd.zip
cpython-e6390a15033b9a93d345338d06b220542687b3fd.tar.gz
cpython-e6390a15033b9a93d345338d06b220542687b3fd.tar.bz2
Adds the hashlib.algorithms attribute. See issue7418.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/hashlib.py4
-rw-r--r--Lib/test/test_hashlib.py5
2 files changed, 8 insertions, 1 deletions
diff --git a/Lib/hashlib.py b/Lib/hashlib.py
index 5ecca2b..48f2cfd 100644
--- a/Lib/hashlib.py
+++ b/Lib/hashlib.py
@@ -58,7 +58,9 @@ More condensed:
# always available algorithm is added.
__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):
diff --git a/Lib/test/test_hashlib.py b/Lib/test/test_hashlib.py
index 6ef5557..8710dd6 100644
--- a/Lib/test/test_hashlib.py
+++ b/Lib/test/test_hashlib.py
@@ -102,6 +102,11 @@ class HashLibTestCase(unittest.TestCase):
c = cons(a)
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):
try:
hashlib.new('spam spam spam spam spam')