test_security.py
21 lines
| 639 B
| text/x-python
|
PythonLexer
Stefan van der Walt
|
r5320 | from IPython.lib import passwd | ||
Stefan van der Walt
|
r5332 | from IPython.lib.security import passwd_check, salt_len | ||
Stefan van der Walt
|
r5320 | import nose.tools as nt | ||
def test_passwd_structure(): | ||||
p = passwd('passphrase') | ||||
algorithm, salt, hashed = p.split(':') | ||||
Bradley M. Froehle
|
r7875 | nt.assert_equal(algorithm, 'sha1') | ||
nt.assert_equal(len(salt), salt_len) | ||||
nt.assert_equal(len(hashed), 40) | ||||
Stefan van der Walt
|
r5320 | |||
def test_roundtrip(): | ||||
p = passwd('passphrase') | ||||
Bradley M. Froehle
|
r7875 | nt.assert_equal(passwd_check(p, 'passphrase'), True) | ||
Stefan van der Walt
|
r5320 | |||
def test_bad(): | ||||
p = passwd('passphrase') | ||||
Bradley M. Froehle
|
r7875 | nt.assert_equal(passwd_check(p, p), False) | ||
nt.assert_equal(passwd_check(p, 'a:b:c:d'), False) | ||||
nt.assert_equal(passwd_check(p, 'a:b'), False) | ||||
Stefan van der Walt
|
r5320 | |||