Add test for test_keyfrag_sqlite

pull/117/head
tuxxy 2017-11-11 18:35:39 -08:00
parent 891cf32a2a
commit 9fb0aad603
No known key found for this signature in database
GPG Key ID: 7BB971A0E89144D9
2 changed files with 27 additions and 6 deletions

View File

@ -90,17 +90,16 @@ class KeyStore(object):
:return: Deserialized RekeyFrag from KeyStore
"""
kfrag = self.session.query(KeyFrag)\
.filter_by(hrac).first()
kfrag = self.session.query(KeyFrag).filter_by(hrac=hrac).first()
if not kfrag:
raise KeyNotFound(
"No KeyFrag with HRAC {} found."
.format(hrac)
)
# TODO: Make this use a class
sig = kfrag[:65]
id = kfrag[65:97]
key = kfrag[97:]
sig = kfrag.key_frag[:65]
id = kfrag.key_frag[65:97]
key = kfrag.key_frag[97:]
kFrag = RekeyFrag(id=id, key=key)
if get_sig:

View File

@ -3,6 +3,8 @@ import sha3
from sqlalchemy import create_engine
from nkms.keystore.db import Base
from nkms.keystore import keystore, keypairs
from npre.umbral import RekeyFrag
from nkms.crypto import api as API
class TestKeyStore(unittest.TestCase):
@ -24,7 +26,7 @@ class TestKeyStore(unittest.TestCase):
self.assertEqual(bytes, type(keypair.privkey))
self.assertEqual(bytes, type(keypair.pubkey))
def test_sqlite_keystore(self):
def test_key_sqlite_keystore(self):
keypair = self.ks.generate_encrypting_keypair()
self.assertEqual(keypairs.EncryptingKeypair, type(keypair))
self.assertEqual(bytes, type(keypair.privkey))
@ -69,3 +71,23 @@ class TestKeyStore(unittest.TestCase):
self.ks.del_key(fingerprint_priv)
with self.assertRaises(keystore.KeyNotFound):
key = self.ks.get_key(fingerprint_priv)
def test_keyfrag_sqlite(self):
rand_sig = API.secure_random(65)
rand_id = API.secure_random(32)
rand_key = API.secure_random(32)
rand_hrac = API.secure_random(32)
kfrag = RekeyFrag(id=rand_id, key=rand_key)
self.ks.add_kfrag(rand_hrac, kfrag, sig=rand_sig)
# Check that kfrag was added
kfrag, signature = self.ks.get_kfrag(rand_hrac, get_sig=True)
self.assertEqual(rand_sig, signature)
self.assertEqual(kfrag.id, rand_id)
self.assertEqual(kfrag.key, rand_key)
# Check that kfrag gets deleted
self.ks.del_kfrag(rand_hrac)
with self.assertRaises(keystore.KeyNotFound):
key = self.ks.get_key(rand_hrac)