aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lang/qt/tests/t-encrypt.cpp6
-rw-r--r--lang/qt/tests/t-support.cpp26
-rw-r--r--lang/qt/tests/t-support.h2
-rw-r--r--lang/qt/tests/t-tofuinfo.cpp6
4 files changed, 30 insertions, 10 deletions
diff --git a/lang/qt/tests/t-encrypt.cpp b/lang/qt/tests/t-encrypt.cpp
index 708c2050..44cea969 100644
--- a/lang/qt/tests/t-encrypt.cpp
+++ b/lang/qt/tests/t-encrypt.cpp
@@ -242,11 +242,7 @@ public Q_SLOT:
Q_ASSERT(agentConf.open(QIODevice::WriteOnly));
agentConf.write("allow-loopback-pinentry");
agentConf.close();
- Q_ASSERT(QFile::copy(gpgHome + QStringLiteral("/pubring.gpg"),
- mDir.path() + QStringLiteral("/pubring.gpg")));
- Q_ASSERT(QFile::copy(gpgHome + QStringLiteral("/secring.gpg"),
- mDir.path() + QStringLiteral("/secring.gpg")));
-
+ copyKeyrings(gpgHome, mDir.path());
}
private:
diff --git a/lang/qt/tests/t-support.cpp b/lang/qt/tests/t-support.cpp
index ffb0f9ef..73e8d5c2 100644
--- a/lang/qt/tests/t-support.cpp
+++ b/lang/qt/tests/t-support.cpp
@@ -45,6 +45,31 @@ void QGpgMETest::cleanupTestCase()
killAgent();
}
+bool QGpgMETest::copyKeyrings(const QString &src, const QString &dest)
+{
+ bool is21dir = QFileInfo(src + QDir::separator() + QStringLiteral("pubring.kbx")).exists();
+ const QString name = is21dir ? QStringLiteral("pubring.kbx") :
+ QStringLiteral("pubring.gpg");
+ if (!QFile::copy(src + name, dest + QDir::separator() + name)) {
+ return false;
+ }
+ if (!is21dir) {
+ return (QFile::copy(src + QDir::separator() + QStringLiteral("secring.gpg"),
+ dest + QDir::separator() + QStringLiteral("secring.gpg")));
+ }
+ QDir dir (src + QDir::separator() + QStringLiteral("private-keys-v1.d"));
+ QDir target(dest);
+ if (!target.mkdir("private-keys-v1.d")) {
+ return false;
+ }
+ foreach (QString f, dir.entryList(QDir::Files)) {
+ if (!QFile::copy(src + QDir::separator() + f, dest + QDir::separator() + f)) {
+ return false;
+ }
+ }
+ return true;
+}
+
void killAgent(const QString& dir)
{
QProcess proc;
@@ -59,4 +84,5 @@ void killAgent(const QString& dir)
proc.waitForFinished();
}
+
#include "t-support.hmoc"
diff --git a/lang/qt/tests/t-support.h b/lang/qt/tests/t-support.h
index cf0cb26e..74163b11 100644
--- a/lang/qt/tests/t-support.h
+++ b/lang/qt/tests/t-support.h
@@ -55,6 +55,8 @@ void killAgent(const QString &dir = qgetenv("GNUPGHOME"));
class QGpgMETest : public QObject
{
Q_OBJECT
+protected:
+ bool copyKeyrings(const QString &from, const QString& to);
public Q_SLOTS:
void initTestCase();
diff --git a/lang/qt/tests/t-tofuinfo.cpp b/lang/qt/tests/t-tofuinfo.cpp
index ab466eed..7eea1eae 100644
--- a/lang/qt/tests/t-tofuinfo.cpp
+++ b/lang/qt/tests/t-tofuinfo.cpp
@@ -239,11 +239,7 @@ private Q_SLOTS:
Q_ASSERT(agentConf.open(QIODevice::WriteOnly));
agentConf.write("allow-loopback-pinentry");
agentConf.close();
- Q_ASSERT(QFile::copy(gpgHome + QStringLiteral("/pubring.gpg"),
- mDir.path() + QStringLiteral("/pubring.gpg")));
- Q_ASSERT(QFile::copy(gpgHome + QStringLiteral("/secring.gpg"),
- mDir.path() + QStringLiteral("/secring.gpg")));
-
+ copyKeyrings(gpgHome, mDir.path());
}
private:
QTemporaryDir mDir;