summaryrefslogtreecommitdiff
path: root/rt/t/api/reminder-permissions.t
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2015-07-09 22:18:55 -0700
committerIvan Kohler <ivan@freeside.biz>2015-07-09 22:18:55 -0700
commit1c538bfabc2cd31f27067505f0c3d1a46cba6ef0 (patch)
tree96922ad4459eda1e649327fd391d60c58d454c53 /rt/t/api/reminder-permissions.t
parent4f5619288413a185e9933088d9dd8c5afbc55dfa (diff)
RT 4.2.11, ticket#13852
Diffstat (limited to 'rt/t/api/reminder-permissions.t')
-rw-r--r--rt/t/api/reminder-permissions.t49
1 files changed, 49 insertions, 0 deletions
diff --git a/rt/t/api/reminder-permissions.t b/rt/t/api/reminder-permissions.t
new file mode 100644
index 000000000..8253d67af
--- /dev/null
+++ b/rt/t/api/reminder-permissions.t
@@ -0,0 +1,49 @@
+use strict;
+use warnings;
+use RT::Test tests => 9;
+
+my $user_a = RT::Test->load_or_create_user(
+ Name => 'user_a',
+ Password => 'password',
+);
+
+ok( $user_a && $user_a->id, 'created user_a' );
+ok(
+ RT::Test->add_rights(
+ {
+ Principal => $user_a,
+ Right => [qw/SeeQueue CreateTicket ShowTicket OwnTicket/]
+ },
+ ),
+ 'add basic rights for user_a'
+);
+
+my $ticket = RT::Test->create_ticket(
+ Subject => 'test reminder permission',
+ Queue => 'General',
+);
+ok( $ticket->id, 'created a ticket' );
+$ticket->CurrentUser($user_a);
+
+my ( $status, $msg ) = $ticket->Reminders->Add(
+ Subject => 'user a reminder',
+ Owner => $user_a->id,
+);
+ok( !$status, "couldn't create reminders without ModifyTicket: $msg" );
+
+ok(
+ RT::Test->add_rights(
+ {
+ Principal => $user_a,
+ Right => [qw/ModifyTicket/]
+ },
+ ),
+ 'add ModifyTicket right for user_a'
+);
+
+( $status, $msg ) = $ticket->Reminders->Add(
+ Subject => 'user a reminder',
+ Owner => $user_a->id,
+);
+ok( $status, "created a reminder with ModifyTicket: $msg" );
+