From 8a77fa519f7cf73c1e9ae30f7e05ac34acf68d1f Mon Sep 17 00:00:00 2001 From: Roman Zeyde Date: Tue, 21 Feb 2017 13:06:12 +0200 Subject: [PATCH] decode: raise an error when keygrip is missing --- trezor_agent/gpg/decode.py | 1 + trezor_agent/gpg/tests/test_decode.py | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/trezor_agent/gpg/decode.py b/trezor_agent/gpg/decode.py index 12d5ef7..c1eba94 100644 --- a/trezor_agent/gpg/decode.py +++ b/trezor_agent/gpg/decode.py @@ -291,6 +291,7 @@ def load_by_keygrip(pubkey_bytes, keygrip): for p in packets: if p.get('keygrip') == keygrip: return p, user_ids + raise KeyError('{} keygrip not found'.format(util.hexlify(keygrip))) def load_signature(stream, original_data): diff --git a/trezor_agent/gpg/tests/test_decode.py b/trezor_agent/gpg/tests/test_decode.py index 92c9b8c..673327b 100644 --- a/trezor_agent/gpg/tests/test_decode.py +++ b/trezor_agent/gpg/tests/test_decode.py @@ -56,3 +56,8 @@ def test_has_custom_subpacket(): for marker in custom_markers: sig = {'unhashed_subpackets': [marker]} assert decode.has_custom_subpacket(sig) + + +def test_load_by_keygrip_missing(): + with pytest.raises(KeyError): + decode.load_by_keygrip(pubkey_bytes=b'', keygrip=b'')