4 use RT::Test::GnuPG tests => 22, gnupg_options => { passphrase => 'rt-test' };
6 use RT::Action::SendEmail;
8 RT::Test->import_gnupg_key('rt-recipient@example.com');
9 RT::Test->import_gnupg_key('rt-test@example.com', 'public');
11 my $queue = RT::Test->load_or_create_queue(
13 CorrespondAddress => 'rt-recipient@example.com',
14 CommentAddress => 'rt-recipient@example.com',
16 ok $queue && $queue->id, 'loaded or created queue';
18 my ($baseurl, $m) = RT::Test->started_ok;
19 ok $m->login, 'logged in';
25 { Sign => 1, Encrypt => 1 },
33 signed_encrypted => [],
36 diag "check in read-only mode that queue's props influence create/update ticket pages";
38 foreach my $variant ( @variants ) {
39 set_queue_crypt_options( $queue => %$variant );
40 $m->goto_create_ticket( $queue );
41 $m->form_name('TicketCreate');
42 if ( $variant->{'Encrypt'} ) {
43 ok $m->value('Encrypt', 2), "encrypt tick box is checked";
45 ok !$m->value('Encrypt', 2), "encrypt tick box is unchecked";
47 if ( $variant->{'Sign'} ) {
48 ok $m->value('Sign', 2), "sign tick box is checked";
50 ok !$m->value('Sign', 2), "sign tick box is unchecked";
54 # to avoid encryption/signing during create
55 set_queue_crypt_options($queue);
57 my $ticket = RT::Ticket->new( RT->SystemUser );
58 my ($id) = $ticket->Create(
61 Requestor => 'rt-test@example.com',
63 ok $id, 'ticket created';
65 foreach my $variant ( @variants ) {
66 set_queue_crypt_options( $queue => %$variant );
67 $m->get( $m->rt_base_url . "/Ticket/Update.html?Action=Respond&id=$id" );
68 $m->form_name('TicketUpdate');
69 if ( $variant->{'Encrypt'} ) {
70 ok $m->value('Encrypt', 2), "encrypt tick box is checked";
72 ok !$m->value('Encrypt', 2), "encrypt tick box is unchecked";
74 if ( $variant->{'Sign'} ) {
75 ok $m->value('Sign', 2), "sign tick box is checked";
77 ok !$m->value('Sign', 2), "sign tick box is unchecked";