diff options
Diffstat (limited to 'src/mailman_pgp/pgp/tests/base.py')
| -rw-r--r-- | src/mailman_pgp/pgp/tests/base.py | 49 |
1 files changed, 37 insertions, 12 deletions
diff --git a/src/mailman_pgp/pgp/tests/base.py b/src/mailman_pgp/pgp/tests/base.py index ccdf7dd..8a5473d 100644 --- a/src/mailman_pgp/pgp/tests/base.py +++ b/src/mailman_pgp/pgp/tests/base.py @@ -41,27 +41,52 @@ class WrapperTestCase(TestCase): wrapped = self.wrapper(message) self.assertEqual(wrapped.is_signed(), signed) + def sign(self, message, key): + wrapped = self.wrapper(message) + signed = wrapped.sign(key) + signed_wrapped = self.wrapper(signed) + self.assertTrue(signed_wrapped.is_signed()) + + def sign_verify(self, message, priv, pub): + wrapped = self.wrapper(message) + signed = wrapped.sign(priv) + signed_wrapped = self.wrapper(signed) + for signature in signed_wrapped.verify(pub): + self.assertTrue(bool(signature)) + def verify(self, message, key, valid): wrapped = self.wrapper(message) - verified = False - try: - verified = bool(wrapped.verify(key)) - except: - pass - self.assertEqual(verified, valid) + for signature in wrapped.verify(key): + self.assertEqual(bool(signature), valid) def is_encrypted(self, message, encrypted): wrapped = self.wrapper(message) self.assertEqual(wrapped.is_encrypted(), encrypted) + def encrypt(self, message, *keys, **kwargs): + wrapped = self.wrapper(message) + encrypted = wrapped.encrypt(*keys, **kwargs) + encrypted_wrapped = self.wrapper(encrypted) + self.assertTrue(encrypted_wrapped.is_encrypted()) + + def encrypt_decrypt(self, message, pub, priv): + wrapped = self.wrapper(message) + encrypted = wrapped.encrypt(pub) + + encrypted_wrapped = self.wrapper(encrypted) + decrypted = encrypted_wrapped.decrypt(priv) + decrypted_wrapped = self.wrapper(decrypted) + + self.assertFalse(decrypted_wrapped.is_encrypted()) + self.assertEqual(decrypted.get_payload(), message.get_payload()) + def decrypt(self, message, key, clear): wrapped = self.wrapper(message) - decrypted = None - try: - decrypted = wrapped.decrypt(key).message - except: - pass - self.assertEqual(decrypted, bytearray(clear, 'latin-1')) + decrypted = wrapped.decrypt(key) + decrypted_wrapped = self.wrapper(decrypted) + + self.assertFalse(decrypted_wrapped.is_encrypted()) + self.assertEqual(decrypted.get_payload(), clear) def has_keys(self, message, has_keys): wrapped = self.wrapper(message) |
