test-gpg: start gpg-agent under control of the test runner
authorYuya Nishihara <yuya@tcha.org>
Sun, 14 Aug 2016 17:01:33 +0900
changeset 29790 94fb0458a791
parent 29789 66e038fb3c0d
child 29791 28591876fa63
test-gpg: start gpg-agent under control of the test runner GnuPG v2 automatically starts gpg-agent. We should kill the daemon process.
tests/hghave.py
tests/test-gpg.t
--- a/tests/hghave.py	Sun Aug 14 16:49:47 2016 +0900
+++ b/tests/hghave.py	Sun Aug 14 17:01:33 2016 +0900
@@ -349,6 +349,10 @@
 def has_gpg():
     return matchoutput('gpg --version 2>&1', br'GnuPG')
 
+@check("gpg2", "gpg client v2")
+def has_gpg2():
+    return matchoutput('gpg --version 2>&1', br'GnuPG[^0-9]+2\.')
+
 @check("unix-permissions", "unix-style permissions")
 def has_unix_permissions():
     d = tempfile.mkdtemp(dir='.', prefix=tempprefix)
--- a/tests/test-gpg.t	Sun Aug 14 16:49:47 2016 +0900
+++ b/tests/test-gpg.t	Sun Aug 14 17:01:33 2016 +0900
@@ -12,6 +12,13 @@
   $ GNUPGHOME="$TESTTMP/gpg"; export GNUPGHOME
   $ cp -R "$TESTDIR/gpg" "$GNUPGHOME"
 
+Start gpg-agent, which is required by GnuPG v2
+
+#if gpg2
+  $ gpg-connect-agent -q --subst /serverpid '/echo ${get serverpid}' /bye \
+  > >> $DAEMON_PIDS
+#endif
+
   $ hg init r
   $ cd r
   $ echo foo > foo