[Rt-commit] rt branch, 3.9-trunk, updated. rt-3.9.4-227-g6693d6c
? sunnavy
sunnavy at bestpractical.com
Thu Oct 28 04:09:02 EDT 2010
The branch, 3.9-trunk has been updated
via 6693d6c81d768808f82b98d1bb689d437f2774f8 (commit)
from 8fd7ae228e84e405902751c9ccc3c15eb1ae8894 (commit)
Summary of changes:
lib/RT/Test/GnuPG.pm | 34 ++++++++++++++++++++++++++++++----
t/mail/crypt-gnupg.t | 27 ++++++++-------------------
t/mail/gnupg-bad.t | 23 ++++++++---------------
t/mail/gnupg-incoming.t | 32 ++++++++++++++------------------
t/mail/gnupg-outgoing.t | 31 +++++++------------------------
t/mail/gnupg-realmail.t | 21 +--------------------
t/mail/gnupg-reverification.t | 23 +----------------------
t/mail/gnupg-special.t | 23 +----------------------
t/web/crypt-gnupg.t | 31 ++++++-------------------------
t/web/gnupg-select-keys-on-create.t | 27 +--------------------------
t/web/gnupg-select-keys-on-update.t | 26 +-------------------------
t/web/gnupg-tickyboxes.t | 25 +------------------------
12 files changed, 79 insertions(+), 244 deletions(-)
- Log -----------------------------------------------------------------
commit 6693d6c81d768808f82b98d1bb689d437f2774f8
Author: sunnavy <sunnavy at bestpractical.com>
Date: Thu Oct 28 14:38:15 2010 +0800
move more common things to import of RT::Test::GnuPg
diff --git a/lib/RT/Test/GnuPG.pm b/lib/RT/Test/GnuPG.pm
index 8446f8c..b205678 100644
--- a/lib/RT/Test/GnuPG.pm
+++ b/lib/RT/Test/GnuPG.pm
@@ -2,20 +2,46 @@ package RT::Test::GnuPG;
use strict;
use Test::More;
use base qw(RT::Test);
+use File::Temp qw(tempdir);
+use RT::Crypt::GnuPG;
our @EXPORT = qw(create_a_ticket update_ticket cleanup_headers set_queue_crypt_options check_text_emails);
sub import {
my $class = shift;
my %args = @_;
- my $t = $class->builder;
+ my $t = $class->builder;
$t->plan( skip_all => 'GnuPG required.' )
- unless eval { require GnuPG::Interface; 1 };
+ unless eval { require GnuPG::Interface; 1 };
$t->plan( skip_all => 'gpg executable is required.' )
- unless RT::Test->find_executable('gpg');
+ unless RT::Test->find_executable('gpg');
- $class->SUPER::import( %args );
+ RT->Config->Set(
+ GnuPG => Enable => 1,
+ OutgoingMessagesFormat => 'RFC',
+ );
+
+ my %gnupg_options = (
+ 'no-permission-warning' => undef,
+ $args{gnupg_options} ? %{ $args{gnupg_options} } : (),
+ );
+ $gnupg_options{homedir} ||= scalar tempdir( CLEANUP => 1 );
+
+ RT->Config->Set( GnuPGOptions => %gnupg_options );
+
+ diag "GnuPG --homedir " . RT->Config->Get('GnuPGOptions')->{'homedir'};
+
+ RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
+
+ $class->SUPER::import(%args);
+
+ $class->set_rights(
+ Principal => 'Everyone',
+ Right => ['CreateTicket', 'ShowTicket', 'SeeQueue', 'ReplyToTicket', 'ModifyTicket'],
+ );
+
+ $class->set_mail_catcher;
$class->export_to_level(1);
}
diff --git a/t/mail/crypt-gnupg.t b/t/mail/crypt-gnupg.t
index 2c297ba..6b89aab 100644
--- a/t/mail/crypt-gnupg.t
+++ b/t/mail/crypt-gnupg.t
@@ -3,29 +3,18 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 97;
-
-use File::Spec ();
-use Cwd;
-
-my $homedir = RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
- qw(data gnupg keyrings) );
+my $homedir;
+BEGIN {
+ require RT::Test;
+ $homedir =
+ RT::Test::get_abs_relocatable_dir( File::Spec->updir(),
+ qw/data gnupg keyrings/ );
+}
-mkdir $homedir;
+use RT::Test::GnuPG tests => 96, gnupg_options => { homedir => $homedir };
-use_ok('RT::Crypt::GnuPG');
use_ok('MIME::Entity');
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- 'no-permission-warning' => undef,
-);
-
-
diag 'only signing. correct passphrase';
{
my $entity = MIME::Entity->build(
diff --git a/t/mail/gnupg-bad.t b/t/mail/gnupg-bad.t
index f9e4248..83790b6 100644
--- a/t/mail/gnupg-bad.t
+++ b/t/mail/gnupg-bad.t
@@ -2,21 +2,14 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 5;
-
-use Cwd 'getcwd';
-
-my $homedir = RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
- qw(data gnupg keyrings));
-
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- passphrase => 'test',
- 'no-permission-warning' => undef);
+use RT::Test::GnuPG
+ tests => 5,
+ gnupg_options => {
+ passphrase => 'rt-test',
+ homedir => RT::Test::get_abs_relocatable_dir(
+ File::Spec->updir(), qw/data gnupg keyrings/
+ ),
+ };
RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
diff --git a/t/mail/gnupg-incoming.t b/t/mail/gnupg-incoming.t
index a1d401a..b31aa63 100644
--- a/t/mail/gnupg-incoming.t
+++ b/t/mail/gnupg-incoming.t
@@ -2,29 +2,25 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 39;
+my $homedir;
+BEGIN {
+ require RT::Test;
+ $homedir =
+ RT::Test::get_abs_relocatable_dir( File::Spec->updir(),
+ qw/data gnupg keyrings/ );
+}
+
+use RT::Test::GnuPG
+ tests => 39,
+ gnupg_options => {
+ passphrase => 'rt-test',
+ homedir => $homedir,
+ };
-use File::Temp;
use Cwd 'getcwd';
use String::ShellQuote 'shell_quote';
use IPC::Run3 'run3';
-my $homedir = RT::Test::get_abs_relocatable_dir(File::Spec->updir(),
- qw(data gnupg keyrings));
-
-# catch any outgoing emails
-RT::Test->set_mail_catcher;
-
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- 'no-permission-warning' => undef);
-
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
-
my ($baseurl, $m) = RT::Test->started_ok;
# configure key for General queue
diff --git a/t/mail/gnupg-outgoing.t b/t/mail/gnupg-outgoing.t
index e64e9a7..9c75121 100644
--- a/t/mail/gnupg-outgoing.t
+++ b/t/mail/gnupg-outgoing.t
@@ -2,26 +2,14 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 390;
-use RT::Action::SendEmail;
-use File::Temp qw(tempdir);
-
-RT::Test->set_mail_catcher;
-
-use_ok('RT::Crypt::GnuPG');
-
-RT->Config->Set( GnuPG =>
- Enable => 1,
- OutgoingMessagesFormat => 'RFC',
-);
-
-RT->Config->Set( GnuPGOptions =>
- homedir => scalar tempdir( CLEANUP => 1 ),
- passphrase => 'rt-test',
- 'no-permission-warning' => undef,
+use RT::Test::GnuPG
+ tests => 389,
+ gnupg_options => {
+ passphrase => 'rt-test',
'trust-model' => 'always',
-);
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
+ };
+
+use RT::Action::SendEmail;
RT::Test->import_gnupg_key('rt-recipient at example.com');
RT::Test->import_gnupg_key('rt-test at example.com', 'public');
@@ -33,11 +21,6 @@ my $queue = RT::Test->load_or_create_queue(
);
ok $queue && $queue->id, 'loaded or created queue';
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket', 'ShowTicket', 'SeeQueue', 'ReplyToTicket', 'ModifyTicket'],
-);
-
my ($baseurl, $m) = RT::Test->started_ok;
ok $m->login, 'logged in';
diff --git a/t/mail/gnupg-realmail.t b/t/mail/gnupg-realmail.t
index 8ad2869..68a3a3c 100644
--- a/t/mail/gnupg-realmail.t
+++ b/t/mail/gnupg-realmail.t
@@ -2,24 +2,10 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 196;
+use RT::Test::GnuPG tests => 196, gnupg_options => { passphrase => 'rt-test' };
use Digest::MD5 qw(md5_hex);
-use File::Temp qw(tempdir);
-my $homedir = tempdir( CLEANUP => 1 );
-
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- passphrase => 'rt-test',
- 'no-permission-warning' => undef);
-
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
-
RT::Test->import_gnupg_key('rt-recipient at example.com');
RT::Test->import_gnupg_key('rt-test at example.com', 'public');
RT::Test->trust_gnupg_key('rt-test at example.com');
@@ -32,11 +18,6 @@ $m->submit_form( form_number => 3,
fields => { CorrespondAddress => 'rt-recipient at example.com' } );
$m->content_like(qr/rt-recipient\@example.com.* - never/, 'has key info.');
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket'],
-);
-
my $eid = 0;
for my $usage (qw/signed encrypted signed&encrypted/) {
for my $format (qw/MIME inline/) {
diff --git a/t/mail/gnupg-reverification.t b/t/mail/gnupg-reverification.t
index 97218a7..198ec2a 100644
--- a/t/mail/gnupg-reverification.t
+++ b/t/mail/gnupg-reverification.t
@@ -2,22 +2,7 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 214;
-
-use File::Temp qw(tempdir);
-my $homedir = tempdir( CLEANUP => 1 );
-
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- passphrase => 'rt-test',
- 'no-permission-warning' => undef);
-
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
-
+use RT::Test::GnuPG tests => 214, gnupg_options => { passphrase => 'rt-test' };
diag "load Everyone group";
my $everyone;
@@ -27,12 +12,6 @@ my $everyone;
ok $everyone->id, "loaded 'everyone' group";
}
-RT::Test->set_rights(
- Principal => $everyone,
- Right => ['CreateTicket'],
-);
-
-
my ($baseurl, $m) = RT::Test->started_ok;
ok $m->login, 'we get log in';
diff --git a/t/mail/gnupg-special.t b/t/mail/gnupg-special.t
index 07ed288..cc8b7d3 100644
--- a/t/mail/gnupg-special.t
+++ b/t/mail/gnupg-special.t
@@ -2,23 +2,7 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 11;
-
-use File::Temp qw(tempdir);
-my $homedir = tempdir( CLEANUP => 1 );
-
-# catch any outgoing emails
-RT::Test->set_mail_catcher;
-
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- 'no-permission-warning' => undef);
-
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
+use RT::Test::GnuPG tests => 11, gnupg_options => { passphrase => 'rt-test' };
RT::Test->import_gnupg_key('rt-recipient at example.com');
RT::Test->import_gnupg_key('rt-test at example.com', 'public');
@@ -42,11 +26,6 @@ ok(my $user = RT::User->new(RT->SystemUser));
ok($user->Load('root'), "Loaded user 'root'");
$user->SetEmailAddress('recipient at example.com');
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket'],
-);
-
{
my $id = send_via_mailgate('quoted_inline_signature.txt');
diff --git a/t/web/crypt-gnupg.t b/t/web/crypt-gnupg.t
index 985a2f5..96e91a5 100644
--- a/t/web/crypt-gnupg.t
+++ b/t/web/crypt-gnupg.t
@@ -1,12 +1,15 @@
#!/usr/bin/perl -w
use strict;
-use RT::Test::GnuPG tests => 101;
+use RT::Test::GnuPG
+ tests => 100,
+ gnupg_options => {
+ passphrase => 'recipient',
+ 'trust-model' => 'always',
+};
use RT::Action::SendEmail;
-RT::Test->set_mail_catcher;
-
RT->Config->Set( CommentAddress => 'general at example.com');
RT->Config->Set( CorrespondAddress => 'general at example.com');
RT->Config->Set( DefaultSearchResultFormat => qq{
@@ -18,23 +21,6 @@ RT->Config->Set( DefaultSearchResultFormat => qq{
'KR-__KeyRequestors__-K',
Status});
-use File::Spec ();
-use Cwd;
-use File::Temp qw(tempdir);
-my $homedir = tempdir( CLEANUP => 1 );
-
-use_ok('RT::Crypt::GnuPG');
-
-RT->Config->Set( 'GnuPG',
- Enable => 1,
- OutgoingMessagesFormat => 'RFC' );
-
-RT->Config->Set( 'GnuPGOptions',
- homedir => $homedir,
- passphrase => 'recipient',
- 'no-permission-warning' => undef,
- 'trust-model' => 'always');
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
RT::Test->import_gnupg_key('recipient at example.com', 'public');
RT::Test->import_gnupg_key('recipient at example.com', 'secret');
@@ -54,11 +40,6 @@ my $queue = RT::Test->load_or_create_queue(
ok $queue && $queue->id, 'loaded or created queue';
my $qid = $queue->id;
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket', 'ShowTicket', 'SeeQueue', 'ModifyTicket'],
-);
-
my ($baseurl, $m) = RT::Test->started_ok;
ok $m->login, 'logged in';
diff --git a/t/web/gnupg-select-keys-on-create.t b/t/web/gnupg-select-keys-on-create.t
index 8254844..619812b 100644
--- a/t/web/gnupg-select-keys-on-create.t
+++ b/t/web/gnupg-select-keys-on-create.t
@@ -2,28 +2,8 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 78;
-
+use RT::Test::GnuPG tests => 77, gnupg_options => { passphrase => 'rt-test' };
use RT::Action::SendEmail;
-use File::Temp qw(tempdir);
-
-RT::Test->set_mail_catcher;
-
-use_ok('RT::Crypt::GnuPG');
-
-RT->Config->Set( GnuPG =>
- Enable => 1,
- OutgoingMessagesFormat => 'RFC',
-);
-
-RT->Config->Set( GnuPGOptions =>
- homedir => scalar tempdir( CLEANUP => 0 ),
- passphrase => 'rt-test',
- 'no-permission-warning' => undef,
-);
-diag "GnuPG --homedir ". RT->Config->Get('GnuPGOptions')->{'homedir'};
-
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
my $queue = RT::Test->load_or_create_queue(
Name => 'Regression',
@@ -32,11 +12,6 @@ my $queue = RT::Test->load_or_create_queue(
);
ok $queue && $queue->id, 'loaded or created queue';
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket', 'ShowTicket', 'SeeQueue', 'ReplyToTicket', 'ModifyTicket'],
-);
-
my ($baseurl, $m) = RT::Test->started_ok;
ok $m->login, 'logged in';
diff --git a/t/web/gnupg-select-keys-on-update.t b/t/web/gnupg-select-keys-on-update.t
index 94009f1..b0f1498 100644
--- a/t/web/gnupg-select-keys-on-update.t
+++ b/t/web/gnupg-select-keys-on-update.t
@@ -2,28 +2,9 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 85;
+use RT::Test::GnuPG tests => 84, gnupg_options => { passphrase => 'rt-test' };
use RT::Action::SendEmail;
-use File::Temp qw(tempdir);
-
-RT::Test->set_mail_catcher;
-
-use_ok('RT::Crypt::GnuPG');
-
-RT->Config->Set( GnuPG =>
- Enable => 1,
- OutgoingMessagesFormat => 'RFC',
-);
-
-RT->Config->Set( GnuPGOptions =>
- homedir => scalar tempdir( CLEANUP => 0 ),
- passphrase => 'rt-test',
- 'no-permission-warning' => undef,
-);
-diag "GnuPG --homedir ". RT->Config->Get('GnuPGOptions')->{'homedir'};
-
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
my $queue = RT::Test->load_or_create_queue(
Name => 'Regression',
@@ -32,11 +13,6 @@ my $queue = RT::Test->load_or_create_queue(
);
ok $queue && $queue->id, 'loaded or created queue';
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket', 'ShowTicket', 'SeeQueue', 'ReplyToTicket', 'ModifyTicket'],
-);
-
my ($baseurl, $m) = RT::Test->started_ok;
ok $m->login, 'logged in';
diff --git a/t/web/gnupg-tickyboxes.t b/t/web/gnupg-tickyboxes.t
index 4786bb2..05239c1 100644
--- a/t/web/gnupg-tickyboxes.t
+++ b/t/web/gnupg-tickyboxes.t
@@ -2,27 +2,9 @@
use strict;
use warnings;
-use RT::Test::GnuPG tests => 30;
+use RT::Test::GnuPG tests => 29, gnupg_options => { passphrase => 'rt-test' };
use RT::Action::SendEmail;
-use File::Temp qw(tempdir);
-
-RT::Test->set_mail_catcher;
-
-use_ok('RT::Crypt::GnuPG');
-
-RT->Config->Set( GnuPG =>
- Enable => 1,
- OutgoingMessagesFormat => 'RFC',
-);
-
-RT->Config->Set( GnuPGOptions =>
- homedir => scalar tempdir( CLEANUP => 1 ),
- passphrase => 'rt-test',
- 'no-permission-warning' => undef,
- 'trust-model' => 'always',
-);
-RT->Config->Set( 'MailPlugins' => 'Auth::MailFrom', 'Auth::GnuPG' );
RT::Test->import_gnupg_key('rt-recipient at example.com');
RT::Test->import_gnupg_key('rt-test at example.com', 'public');
@@ -34,11 +16,6 @@ my $queue = RT::Test->load_or_create_queue(
);
ok $queue && $queue->id, 'loaded or created queue';
-RT::Test->set_rights(
- Principal => 'Everyone',
- Right => ['CreateTicket', 'ShowTicket', 'SeeQueue', 'ReplyToTicket', 'ModifyTicket'],
-);
-
my ($baseurl, $m) = RT::Test->started_ok;
ok $m->login, 'logged in';
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list