[Pkg-gnupg-commit] [gpgme] 21/53: qt: Disable tests that require a password for 2.0
Daniel Kahn Gillmor
dkg at fifthhorseman.net
Mon Oct 24 19:26:49 UTC 2016
This is an automated email from the git hooks/post-receive script.
dkg pushed a commit to branch experimental
in repository gpgme.
commit 24779c9e2301bd17fd328d65b0383e1cbc944119
Author: Andre Heinecke <aheinecke at intevation.de>
Date: Wed Oct 5 17:19:20 2016 +0200
qt: Disable tests that require a password for 2.0
* lang/qt/tests/t-encrypt.cpp: Disable tests that require
a password for 2.0.
--
The passphrase_cb apparently does not work with 2.0 so we would
need a fake pinentry to get this to work. We just disable the
test instead as this is a rarely used feature and works with
1.4 and 2.1.
---
lang/qt/tests/t-encrypt.cpp | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/lang/qt/tests/t-encrypt.cpp b/lang/qt/tests/t-encrypt.cpp
index c3ce610..4d65dc7 100644
--- a/lang/qt/tests/t-encrypt.cpp
+++ b/lang/qt/tests/t-encrypt.cpp
@@ -53,6 +53,23 @@
using namespace QGpgME;
using namespace GpgME;
+static bool decryptSupported()
+{
+ /* With GnuPG 2.0.x (at least 2.0.26 by default on jessie)
+ * the passphrase_cb does not work. So the test popped up
+ * a pinentry. So tests requiring decryption don't work. */
+ static auto version = GpgME::engineInfo(GpgME::GpgEngine).engineVersion();
+ if (version < "2.0.0") {
+ /* With 1.4 it just works */
+ return true;
+ }
+ if (version < "2.1.0") {
+ /* With 2.1 it works with loopback mode */
+ return false;
+ }
+ return true;
+}
+
class EncryptionTest : public QGpgMETest
{
Q_OBJECT
@@ -82,6 +99,9 @@ private Q_SLOTS:
Q_ASSERT(cipherString.startsWith("-----BEGIN PGP MESSAGE-----"));
/* Now decrypt */
+ if (!decryptSupported()) {
+ return;
+ }
auto ctx = Context::createForProtocol(OpenPGP);
TestPassphraseProvider provider;
ctx->setPassphraseProvider(&provider);
@@ -150,6 +170,9 @@ private Q_SLOTS:
void testSymmetricEncryptDecrypt()
{
+ if (!decryptSupported()) {
+ return;
+ }
auto ctx = Context::createForProtocol(OpenPGP);
TestPassphraseProvider provider;
ctx->setPassphraseProvider(&provider);
@@ -182,6 +205,9 @@ private:
* So this test is disabled until gnupg(?) is fixed for this. */
void testMixedEncryptDecrypt()
{
+ if (!decryptSupported()) {
+ return;
+ }
auto listjob = openpgp()->keyListJob(false, false, false);
std::vector<Key> keys;
auto keylistresult = listjob->exec(QStringList() << QStringLiteral("alfa at example.net"),
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gpgme.git
More information about the Pkg-gnupg-commit
mailing list