diff options
Diffstat (limited to 'rt/t/approval')
-rw-r--r-- | rt/t/approval/admincc.t | 46 | ||||
-rw-r--r-- | rt/t/approval/basic.t | 36 |
2 files changed, 49 insertions, 33 deletions
diff --git a/rt/t/approval/admincc.t b/rt/t/approval/admincc.t index b43929603..da8cac23d 100644 --- a/rt/t/approval/admincc.t +++ b/rt/t/approval/admincc.t @@ -2,17 +2,12 @@ use strict; use warnings; use Test::More; -BEGIN { - eval { require Email::Abstract; require Test::Email; 1 } - or plan skip_all => 'require Email::Abstract and Test::Email'; -} - use RT; -use RT::Test tests => 62; +use RT::Test tests => "no_declare"; use RT::Test::Email; -RT->Config->Set( LogToScreen => 'debug' ); +RT->Config->Set( LogToSTDERR => 'debug' ); RT->Config->Set( UseTransactionBatch => 1 ); my ($baseurl, $m) = RT::Test->started_ok; @@ -42,7 +37,6 @@ Queue: ___Approvals Type: approval Owner: CTO AdminCCs: COO, CEO -Requestors: {$Tickets{"TOP"}->Requestors} DependedOnBy: TOP Subject: CTO Approval for PO: {$Tickets{"TOP"}->Id} - {$Tickets{"TOP"}->Subject} Due: {time + 86400} @@ -84,20 +78,20 @@ mail_ok { Requestor => 'minion', Queue => $q->Id, ); -} { from => qr/RT System/, - bcc => qr/ceo.*coo|coo.*ceo/i, - subject => qr/PO for stationary/i, -}, -{ from => qr/RT System/, - to => 'cto@company.com', - subject => qr/New Pending Approval: CTO Approval/, - body => qr/pending your approval.*Your approval is requested.*Blah/s -}, -{ from => qr/PO via RT/, +} { from => qr/PO via RT/, to => 'minion@company.com', subject => qr/PO for stationary/, body => qr/automatically generated in response/ -}; +},{ from => qr/RT System/, + to => 'root@localhost', + subject => qr/PO for stationary/, +},{ from => qr/RT System/, + to => 'cto@company.com', + bcc => qr/ceo.*coo|coo.*ceo/i, + subject => qr/New Pending Approval: CTO Approval/, + body => qr/pending your approval.*Your approval is requested.*Blah/s +} +; ok ($tid,$tmsg); @@ -134,6 +128,11 @@ mail_ok { }, { from => qr/RT System/, + to => 'root@localhost', + subject => qr/Ticket Approved:/, +}, +{ + from => qr/RT System/, to => 'minion@company.com', subject => qr/Ticket Approved:/, body => qr/approved by CTO.*notes: Resources exist to be consumed/s @@ -180,6 +179,12 @@ for my $admin (qw/coo ceo/) { body => qr/Resources exist to be consumed/, }, { + from => qr/RT System/, + to => 'root@localhost', + subject => qr/Ticket Approved:/, + body => qr/approved by \U$admin\E.*notes: Resources exist to be consumed/s + }, + { from => qr/RT System/, to => 'minion@company.com', subject => qr/Ticket Approved:/, @@ -273,3 +278,6 @@ $m_coo->content_lacks( 'second approval', 'coo: second approval is gone too' ); $m_ceo->content_lacks( 'second approval', 'ceo: second approval is gone too' ); RT::Test->clean_caught_mails; + +undef $m; +done_testing; diff --git a/rt/t/approval/basic.t b/rt/t/approval/basic.t index 2d00eb56e..e863bf12f 100644 --- a/rt/t/approval/basic.t +++ b/rt/t/approval/basic.t @@ -1,15 +1,10 @@ use strict; use warnings; use RT::Test tests => undef; -BEGIN { - plan skip_all => 'Email::Abstract and Test::Email required.' - unless eval { require Email::Abstract; require Test::Email; 1 }; - plan tests => 38; -} use RT::Test::Email; -RT->Config->Set( LogToScreen => 'debug' ); +RT->Config->Set( LogToSTDERR => 'debug' ); RT->Config->Set( UseTransactionBatch => 1 ); my $q = RT::Queue->new(RT->SystemUser); @@ -33,7 +28,6 @@ my $approvals = Queue: ___Approvals Type: approval Owner: CFO -Requestors: {$Tickets{"TOP"}->Requestors} Refers-To: TOP Subject: CFO Approval for PO: {$Tickets{"TOP"}->Id} - {$Tickets{"TOP"}->Subject} Due: {time + 86400} @@ -46,7 +40,6 @@ ENDOFCONTENT Queue: ___Approvals Type: approval Owner: CEO -Requestors: {$Tickets{"TOP"}->Requestors} Subject: PO approval request for {$Tickets{"TOP"}->Subject} Refers-To: TOP Depends-On: for-CFO @@ -86,14 +79,17 @@ mail_ok { $t->Create(Subject => "PO for stationary", Owner => "root", Requestor => 'minion', Queue => $q->Id); -} { from => qr/RT System/, - to => 'cfo@company.com', - subject => qr/New Pending Approval: CFO Approval/, - body => qr/pending your approval.*Your approval is requested.*Blah/s -},{ from => qr/PO via RT/, +} { from => qr/PO via RT/, to => 'minion@company.com', subject => qr/PO for stationary/, body => qr/automatically generated in response/ +},{ from => qr/RT System/, + to => 'root@localhost', + subject => qr/PO for stationary/, +}, { from => qr/RT System/, + to => 'cfo@company.com', + subject => qr/New Pending Approval: CFO Approval/, + body => qr/pending your approval.*Your approval is requested.*Blah/s }; ok ($tid,$tmsg); @@ -137,6 +133,9 @@ mail_ok { subject => qr/New Pending Approval: PO approval request for PO/, body => qr/pending your approval.*CFO approved.*ok with that\?/s },{ from => qr/RT System/, + to => 'root@localhost', + subject => qr/Ticket Approved:/, +},{ from => qr/RT System/, to => 'minion@company.com', subject => qr/Ticket Approved:/, body => qr/approved by CFO.*notes: Resources exist to be consumed/s @@ -165,10 +164,14 @@ mail_ok { ok($ok, "ceo can approve - $msg"); } { from => qr/RT System/, + to => 'root@localhost', + subject => qr/Ticket Approved:/, + body => qr/approved by CEO.*Its Owner may now start to act on it.*notes: And consumed they will be/s, +},{ from => qr/RT System/, to => 'minion@company.com', subject => qr/Ticket Approved:/, body => qr/approved by CEO.*Its Owner may now start to act on it.*notes: And consumed they will be/s, -}, { from => qr/CEO via RT/, +},{ from => qr/CEO via RT/, to => 'root@localhost', subject => qr/Ticket Approved/, body => qr/The ticket has been approved, you may now start to act on it/, @@ -203,6 +206,10 @@ mail_ok { ok($ok, "cfo can approve - $msg"); } { from => qr/RT System/, + to => 'root@localhost', + subject => qr/Ticket Rejected: PO for stationary/, + body => qr/rejected by CFO.*out of resources/s, +},{ from => qr/RT System/, to => 'minion@company.com', subject => qr/Ticket Rejected: PO for stationary/, body => qr/rejected by CFO.*out of resources/s, @@ -212,3 +219,4 @@ $t->Load($t->id);$dependson_ceo->Load($dependson_ceo->id); is_deeply([ $t->Status, $dependson_cfo->Status, $dependson_ceo->Status ], [ 'rejected', 'rejected', 'deleted'], 'ticket state after cfo rejection'); +done_testing; |