1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
use strict;
use warnings;
use RT::Test::GnuPG
tests => undef,
gnupg_options => {
passphrase => 'rt-test',
'trust-model' => 'always',
}
;
my $queue;
{
$queue = RT::Test->load_or_create_queue(
Name => 'Regression',
SignAuto => 1,
);
ok $queue && $queue->id, 'loaded or created queue';
ok !$queue->CorrespondAddress, 'address not set';
}
# We don't use Test::Warn here, because it apparently only captures up
# to the first newline -- and the meat of this message is on the fourth
# line.
my @warnings;
local $SIG{__WARN__} = sub {
push @warnings, "@_";
};
my $ticket = RT::Ticket->new( RT->SystemUser );
my ($status, undef, $msg) = $ticket->Create(
Queue => $queue->id,
Subject => 'test',
Requestor => 'root@localhost',
);
ok( $status, "created ticket" ) or diag "error: $msg";
is( scalar @warnings, 1, "Got a warning" );
like( $warnings[0], qr{signing failed: secret key not available},
"Found warning of no secret key");
done_testing;
|