[Rt-commit] r5786 - in RT-Extension-CommandByEmail: .
kevinr at bestpractical.com
kevinr at bestpractical.com
Mon Aug 21 19:08:00 EDT 2006
Author: kevinr
Date: Mon Aug 21 19:07:54 2006
New Revision: 5786
Modified:
RT-Extension-CommandByEmail/ (props changed)
RT-Extension-CommandByEmail/t/02.create.t
Log:
r25579 at sad-girl-in-snow: kevinr | 2006-08-21 19:06:55 -0400
* Added creation-tests to see if we can set owners and ccs by email *and* name
Modified: RT-Extension-CommandByEmail/t/02.create.t
==============================================================================
--- RT-Extension-CommandByEmail/t/02.create.t (original)
+++ RT-Extension-CommandByEmail/t/02.create.t Mon Aug 21 19:07:54 2006
@@ -220,3 +220,71 @@
is($obj->FirstCustomFieldValue($cf_name), 'foo', 'correct cf value' );
}
+diag("accept watcher as username and email address") if $ENV{'TEST_VERBOSE'};
+{
+ require RT::Queue;
+ require RT::User;
+
+ my $queue_name = "WatcherQueue$$";
+ my $queue = RT::Queue->new($RT::SystemUser);
+ my ($id, $msg) = $queue->Create( Name => $queue_name );
+ ok($id, "Created queue '$queue_name'? $msg");
+
+ my $user_name = "WatcherCommandTest$$";
+ my $user_email = "watchercommand$$\@example.com";
+
+ my $user = RT::User->new($RT::SystemUser);
+ ($id, $msg) = $user->Create( Name => $user_name,
+ EmailAddress => $user_email );
+ ok($id, "Created '$user_name'? $msg");
+ ($id, $msg) = $user->SetPrivileged(1);
+ ($id, $msg) = $user->PrincipalObj->GrantRight( Right => 'OwnTicket',
+ Object => $queue );
+ ok($id, "Granted 'OwnTicket' to '$user_name'? $msg");
+ ($id, $msg) = $user->PrincipalObj->GrantRight( Right => 'Watch',
+ Object => $queue );
+ ok($id, "Granted 'Watch' to '$user_name'? $msg");
+
+ foreach my $owner ( $user_name, $user_email ) {
+ my $text = <<END;
+Subject: owner test $$
+From: root\@localhost
+
+Queue: $queue_name
+Owner: $owner
+
+owner test
+END
+ $id = create_ticket_via_gate( $text );
+ ok($id, "created ticket");
+ my $ticket = RT::Ticket->new($RT::SystemUser);
+ $ticket->Load( $id );
+ is($ticket->id, $id, "loaded ticket");
+ ok( $ticket->IsWatcher( Type => 'Owner',
+ PrincipalId => $user->PrincipalId ), "set '$owner' as Owner"
+ );
+ }
+
+ foreach my $cc ( $user_name, $user_email ) {
+ my $text = <<END;
+Subject: cc test $$
+From: root\@localhost
+
+Queue: $queue_name
+Cc: $cc
+
+cc test
+END
+ $id = create_ticket_via_gate( $text );
+ ok($id, "created ticket");
+ my $ticket = RT::Ticket->new($RT::SystemUser);
+ $ticket->Load( $id );
+ is($ticket->id, $id, "loaded");
+ ok( $ticket->IsWatcher( Type => 'Cc',
+ PrincipalId => $user->PrincipalId ), "set '$cc' as Cc"
+ );
+ }
+
+}
+
+1;
More information about the Rt-commit
mailing list