6 use RT::Test tests => 14;
9 # Test the rest of the conditions.
12 # Test cleanup scripts.
14 my ($baseurl, $m) = RT::Test->started_ok;
15 ok $m->login, "logged in";
17 $m->follow_link_ok({id => 'tools-config-global-scrips-create'});
19 sub prepare_code_with_value {
22 # changing the ticket is an easy scrip check for a test
24 '$self->TicketObj->SetSubject(' .
25 '$self->TicketObj->Subject . ' .
31 # preserve order for checking the subject string later
32 my @values_for_actions;
34 my $conds = RT::ScripConditions->new(RT->SystemUser);
35 foreach my $cond_value ('On Forward', 'On Forward Ticket', 'On Forward Transaction') {
39 ENTRYAGGREGATOR => 'OR',
43 while (my $rec = $conds->Next) {
44 push @values_for_actions, [$rec->Id, '"' . $rec->Name . '"'];
47 @values_for_actions = sort { $a->[0] cmp $b->[0] } @values_for_actions;
49 foreach my $data (@values_for_actions) {
50 my ($condition, $prepare_code_value) = @$data;
51 diag "Create Scrip (Cond #$condition)" if $ENV{TEST_VERBOSE};
52 $m->follow_link_ok({id => 'tools-config-global-scrips-create'});
53 my $prepare_code = prepare_code_with_value($prepare_code_value);
54 $m->form_name('ModifyScrip');
56 'Scrip-new-ScripCondition' => $condition,
57 'Scrip-new-ScripAction' => 15, # User Defined
58 'Scrip-new-Template' => 1, # Blank
59 'Scrip-new-CustomPrepareCode' => $prepare_code,
64 my $ticket_obj = RT::Test->create_ticket(
69 my $ticket = $ticket_obj->id;
70 $m->goto_ticket($ticket);
73 { id => 'page-actions-forward' },
74 'follow 1st Forward to forward ticket'
77 diag "Forward Ticket" if $ENV{TEST_VERBOSE};
79 form_name => 'ForwardMessage',
81 To => 'rt-test, rt-to@example.com',
83 button => 'ForwardAndReturn'
86 $m->text_contains("#${ticket}: subject|On Forward|On Forward Ticket");
88 diag "Forward Transaction" if $ENV{TEST_VERBOSE};
89 # get the first transaction on the ticket
90 my ($transaction) = $ticket_obj->Transactions->First->id;
92 "$baseurl/Ticket/Forward.html?id=1&QuoteTransaction=$transaction"
95 form_name => 'ForwardMessage',
97 To => 'rt-test, rt-to@example.com',
99 button => 'ForwardAndReturn'
102 $m->text_contains("#${ticket}: subject|On Forward|On Forward Ticket|On Forward|On Forward Transaction");
104 RT::Test->clean_caught_mails;