diff options
author | Justus Winter <[email protected]> | 2016-06-08 16:58:57 +0000 |
---|---|---|
committer | Justus Winter <[email protected]> | 2016-07-08 16:05:12 +0000 |
commit | d6408ce471c294c3e6f901d183b87d521b9bcc56 (patch) | |
tree | 79abbe30ca1a90a4460c696cdee6976890f486a9 /lang/python/tests/t-decrypt-verify.py | |
parent | python: Port more tests. (diff) | |
download | gpgme-d6408ce471c294c3e6f901d183b87d521b9bcc56.tar.gz gpgme-d6408ce471c294c3e6f901d183b87d521b9bcc56.zip |
python: idiomatic interface prototypejustus/idiomatic-py-0
Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to 'lang/python/tests/t-decrypt-verify.py')
-rwxr-xr-x | lang/python/tests/t-decrypt-verify.py | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/lang/python/tests/t-decrypt-verify.py b/lang/python/tests/t-decrypt-verify.py index 433e0a1e..0f615dc0 100755 --- a/lang/python/tests/t-decrypt-verify.py +++ b/lang/python/tests/t-decrypt-verify.py @@ -17,6 +17,7 @@ # You should have received a copy of the GNU Lesser General Public # License along with this program; if not, see <http://www.gnu.org/licenses/>. +import pyme from pyme import core, constants, errors import support @@ -28,7 +29,7 @@ def check_verify_result(result, summary, fpr, status): assert errors.GPGMEError(sig.status).getcode() == status assert len(sig.notations) == 0 assert not sig.wrong_key_usage - assert sig.validity == constants.VALIDITY_UNKNOWN + assert sig.validity == constants.VALIDITY_FULL assert errors.GPGMEError(sig.validity_reason).getcode() == errors.NO_ERROR support.init_gpgme(constants.PROTOCOL_OpenPGP) @@ -45,6 +46,29 @@ assert not result.unsupported_algorithm, \ support.print_data(sink) verify_result = c.op_verify_result() -check_verify_result(verify_result, 0, +check_verify_result(verify_result, + constants.SIGSUM_VALID | constants.SIGSUM_GREEN, "A0FF4590BB6122EDEF6E3C542D727CC768697734", errors.NO_ERROR) + +# Idiomatic interface. +with pyme.Context() as c: + alpha = c.get_key("A0FF4590BB6122EDEF6E3C542D727CC768697734", False) + bob = c.get_key("D695676BDCEDCC2CDD6152BCFE180B1DA9E3B0B2", False) + plaintext, _, verify_result = \ + c.decrypt(open(support.make_filename("cipher-2.asc")), verify=[alpha]) + assert plaintext.find(b'Wenn Sie dies lesen k') >= 0, \ + 'Plaintext not found' + check_verify_result(verify_result, + constants.SIGSUM_VALID | constants.SIGSUM_GREEN, + "A0FF4590BB6122EDEF6E3C542D727CC768697734", + errors.NO_ERROR) + + try: + c.decrypt(open(support.make_filename("cipher-2.asc")), + verify=[alpha, bob]) + except errors.MissingSignatures as e: + assert len(e.missing) == 1 + assert e.missing[0] == bob + else: + assert False, "Expected an error, got none" |