diff options
Diffstat (limited to 'src/mailman_pgp/utils/tests/test_pgp.py')
| -rw-r--r-- | src/mailman_pgp/utils/tests/test_pgp.py | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/mailman_pgp/utils/tests/test_pgp.py b/src/mailman_pgp/utils/tests/test_pgp.py index b6433d4..26b1be9 100644 --- a/src/mailman_pgp/utils/tests/test_pgp.py +++ b/src/mailman_pgp/utils/tests/test_pgp.py @@ -54,6 +54,14 @@ class TestPGPUtils(TestCase): def test_revoc_from_blob_invalid(self, blob): self.assertRaises(ValueError, revoc_from_blob, blob) + def test_key_usable(self): + key = load_key('rsa_1024.priv.asc') + + self.assertTrue(key_usable(key.pubkey, + {KeyFlags.Certify, KeyFlags.Sign, + KeyFlags.EncryptCommunications, + KeyFlags.EncryptStorage})) + def test_key_usable_expired(self): key = PGPKey.new(PubKeyAlgorithm.ECDSA, EllipticCurveOID.SECP256K1) uid = PGPUID.new('Some Name', email='anne@example.org') @@ -68,14 +76,21 @@ class TestPGPUtils(TestCase): time.sleep(2) - self.assertFalse(key_usable(key, set())) + self.assertFalse(key_usable(key.pubkey, set())) + + def test_key_usable_revoked_uid(self): + key = load_key('ecc_p256.priv.asc') + uid = next(iter(key.userids)) + rsig = key.revoke(uid) + uid |= rsig + self.assertFalse(key_usable(key.pubkey, {KeyFlags.Sign})) def test_key_usable_revoked(self): key = load_key('ecc_p256.priv.asc') rsig = key.revoke(key) key |= rsig - self.assertFalse(key_usable(key, set())) + self.assertFalse(key_usable(key.pubkey, set())) def test_key_usable_subkey_revoked(self): key = load_key('ecc_p256.priv.asc') @@ -83,4 +98,5 @@ class TestPGPUtils(TestCase): rsig = key.revoke(sub) sub |= rsig - self.assertFalse(key_usable(key, {KeyFlags.EncryptCommunications})) + self.assertFalse( + key_usable(key.pubkey, {KeyFlags.EncryptCommunications})) |
