aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python/tests
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2016-05-24 15:57:10 +0000
committerJustus Winter <[email protected]>2016-05-24 16:00:16 +0000
commit00ff6d07330028da370c869e3ec442eb76f8cbb8 (patch)
treedc05241c2a3ed786cc2add677b6a06e9f725c5cd /lang/python/tests
parentpython: Make all GnuPG errors available. (diff)
downloadgpgme-00ff6d07330028da370c869e3ec442eb76f8cbb8.tar.gz
gpgme-00ff6d07330028da370c869e3ec442eb76f8cbb8.zip
python: Improve and test Context.wait.
* lang/python/pyme/core.py (Context.wait): Improve docstring. As the context passed to 'gpgme_wait' is never NULL, it is pointless to look at the returned context. Always raise exceptions. * lang/python/tests/Makefile.am (pytests): Add new test. * lang/python/tests/t-wait.py: New file. Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to '')
-rw-r--r--lang/python/tests/Makefile.am3
-rwxr-xr-xlang/python/tests/t-wait.py42
2 files changed, 44 insertions, 1 deletions
diff --git a/lang/python/tests/Makefile.am b/lang/python/tests/Makefile.am
index 236354ff..7df40a2d 100644
--- a/lang/python/tests/Makefile.am
+++ b/lang/python/tests/Makefile.am
@@ -39,7 +39,8 @@ py_tests = t-wrapper.py \
t-signers.py \
t-decrypt.py \
t-export.py \
- t-edit.py
+ t-edit.py \
+ t-wait.py
TESTS = $(top_srcdir)/tests/gpg/initial.test \
$(py_tests) \
diff --git a/lang/python/tests/t-wait.py b/lang/python/tests/t-wait.py
new file mode 100755
index 00000000..7eaa46ab
--- /dev/null
+++ b/lang/python/tests/t-wait.py
@@ -0,0 +1,42 @@
+#!/usr/bin/env python3
+
+# Copyright (C) 2016 g10 Code GmbH
+#
+# This file is part of GPGME.
+#
+# GPGME is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# GPGME is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
+# Public License for more details.
+#
+# 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 time
+from pyme import core, constants, errors
+import support
+
+support.init_gpgme(constants.PROTOCOL_OpenPGP)
+c = core.Context()
+c.set_armor(True)
+
+# Checking a message without a signature.
+sig = core.Data("foo\n")
+text = core.Data()
+c.op_verify_start(sig, None, text)
+
+try:
+ while True:
+ err = c.wait(False)
+ if err:
+ break
+ time.sleep(0.1)
+except Exception as e:
+ assert e.getcode() == errors.NO_DATA
+else:
+ assert False, "Expected an error, got none"