summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_crypt.py
diff options
context:
space:
mode:
authorSean Reifscheider <jafo@tummy.com>2011-02-22 10:55:44 (GMT)
committerSean Reifscheider <jafo@tummy.com>2011-02-22 10:55:44 (GMT)
commite2dfefbe85e0471c35062146a218aea2270ea600 (patch)
tree779b690c9e097108530f75b9bf443f8566bd93d7 /Lib/test/test_crypt.py
parentf3042782af65fbf68ca7e343357144c676b3fd54 (diff)
downloadcpython-e2dfefbe85e0471c35062146a218aea2270ea600.zip
cpython-e2dfefbe85e0471c35062146a218aea2270ea600.tar.gz
cpython-e2dfefbe85e0471c35062146a218aea2270ea600.tar.bz2
Issue #10924: Adding salt and Modular Crypt Format to crypt library.
Diffstat (limited to 'Lib/test/test_crypt.py')
-rw-r--r--Lib/test/test_crypt.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/Lib/test/test_crypt.py b/Lib/test/test_crypt.py
index 2adb28d..cb4234b 100644
--- a/Lib/test/test_crypt.py
+++ b/Lib/test/test_crypt.py
@@ -10,6 +10,23 @@ class CryptTestCase(unittest.TestCase):
if support.verbose:
print('Test encryption: ', c)
+ def test_salt(self):
+ self.assertEqual(len(crypt.saltchars), 64)
+ for method in crypt.methods():
+ salt = crypt.mksalt(method)
+ self.assertEqual(len(salt),
+ method.salt_chars + (3 if method.ident else 0))
+
+ def test_saltedcrypt(self):
+ for method in crypt.methods():
+ pw = crypt.crypt('assword', method)
+ self.assertEqual(len(pw), method.total_size)
+ pw = crypt.crypt('assword', crypt.mksalt(method))
+ self.assertEqual(len(pw), method.total_size)
+
+ def test_methods(self):
+ self.assertTrue(len(crypt.methods()) > 1)
+
def test_main():
support.run_unittest(CryptTestCase)