[Rt-commit] rt branch, 5.0/fix-skipped-gpg-tests, created. rt-5.0.0beta2-90-ge29851a6ef
? sunnavy
sunnavy at bestpractical.com
Wed Jul 15 10:46:20 EDT 2020
The branch, 5.0/fix-skipped-gpg-tests has been created
at e29851a6efd13358bf085a8be6e20392287747a5 (commit)
- Log -----------------------------------------------------------------
commit be000f97ec02be9a35666981f8f26671b75e2312
Author: sunnavy <sunnavy at bestpractical.com>
Date: Wed Jul 15 19:47:50 2020 +0800
Don't clean gpg stuff if tests are skipped
We skip gpg tests if current gpg env is not suitable, e.g. when there is
no gpg command or the gpg version is incompatible with GnuPG::Interface.
For cases like that, the unnecessary cleanup code could fail, so here we
skip it.
diff --git a/lib/RT/Test/GnuPG.pm b/lib/RT/Test/GnuPG.pm
index 2d6a8ab720..71b76dc323 100644
--- a/lib/RT/Test/GnuPG.pm
+++ b/lib/RT/Test/GnuPG.pm
@@ -405,7 +405,7 @@ sub new_homedir {
}
END {
- if ( gnupg_version() >= 2 ) {
+ if ( RT::Test->builder()->has_plan && gnupg_version() >= 2 ) {
system( 'gpgconf', '--homedir', RT->Config->Get('GnuPGOptions')->{homedir}, '--quiet', '--kill', 'gpg-agent' )
&& warn $!;
}
commit e29851a6efd13358bf085a8be6e20392287747a5
Author: sunnavy <sunnavy at bestpractical.com>
Date: Wed Jul 15 20:28:31 2020 +0800
Skip gpg homedir creation if tests are going to be skipped
Not just because it's unnecessary, but it also could cause some tests to
fail as we check gpg version in homedir creation, and the version check
code could die if there is no gpg command or GnuPG::Interface, or the
gpg command is incompatible with GnuPG::Interface.
We do skip gpg tests for above cases either automatically or by setting
env SKIP_GPG_TESTS=1, but tests like t/mail/gnupg-incoming.t create gpg
homedir earlier than the skip logic, so we need to add similar skip
logic in homedir creation code.
diff --git a/lib/RT/Test/GnuPG.pm b/lib/RT/Test/GnuPG.pm
index 71b76dc323..f14c892529 100644
--- a/lib/RT/Test/GnuPG.pm
+++ b/lib/RT/Test/GnuPG.pm
@@ -387,6 +387,7 @@ sub gnupg_version {
sub new_homedir {
my $source = shift;
+ return if $ENV{'SKIP_GPG_TESTS'} || !RT::Test->find_executable('gpg') || !GnuPG::Interface->require;
my $dir = tempdir();
if ($source) {
-----------------------------------------------------------------------
More information about the rt-commit
mailing list