Esempio n. 1
0
 def test_to_basic(self):
     field = ChallengeField('md5')
     assert field.to_basic(
         MockConfig(), DigestValue(b'salt', b'digest', hashlib.md5)) == {
             'salt': base64.b64encode(b'salt').decode(),
             'digest': base64.b64encode(b'digest').decode(),
         }
Esempio n. 2
0
 def test_validate_tuple(self):
     val = DigestValue(b'salt', b'digest', hashlib.md5)
     field = ChallengeField('md5')
     assert field._validate(None, val) is val
Esempio n. 3
0
 def test_challenge_failed(self):
     salt = b'salt'
     digest = hashlib.md5(b'message').digest()
     val = DigestValue(salt, digest, hashlib.md5)
     with pytest.raises(ValueError):
         val.challenge(b'm3ssage')
Esempio n. 4
0
 def test_challenge_success(self):
     salt = b'salt'
     digest = hashlib.md5(b'saltmessage').digest()
     val = DigestValue(salt, digest, hashlib.md5)
     val.challenge('message')
     val.challenge(b'message')
Esempio n. 5
0
    def test_parse(self):
        val = DigestValue(b'salt', b'digest', hashlib.sha256)
        val2 = DigestValue.parse(str(val), hashlib.sha256)

        assert val == val2
Esempio n. 6
0
 def test_str(self):
     salt = base64.b64encode(b'salt')
     digest = base64.b64encode(b'digest')
     val = DigestValue(b'salt', b'digest', hashlib.sha256)
     assert str(val) == "%s:%s" % (salt.decode(), digest.decode())