X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Ft%2Fweb%2Frequestor_groups_edit_link.t;fp=rt%2Ft%2Fweb%2Frequestor_groups_edit_link.t;h=9d1fefd5cf90e03325f9b25ef3245e32139d1b01;hb=6587f6ba7d047ddc1686c080090afe7d53365bd4;hp=0000000000000000000000000000000000000000;hpb=47153aae5c2fc00316654e7277fccd45f72ff611;p=freeside.git diff --git a/rt/t/web/requestor_groups_edit_link.t b/rt/t/web/requestor_groups_edit_link.t new file mode 100644 index 000000000..9d1fefd5c --- /dev/null +++ b/rt/t/web/requestor_groups_edit_link.t @@ -0,0 +1,56 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +use RT::Test tests => 11; + +RT->Config->Set( ShowMoreAboutPrivilegedUsers => 1 ); + +my ( $url, $m ) = RT::Test->started_ok; +my $user_a = RT::Test->load_or_create_user( + Name => 'user_a', + Password => 'password', +); +ok( $user_a, 'created user user_a' ); +ok( + RT::Test->set_rights( + { + Principal => $user_a, + Right => [ qw/SeeQueue ShowTicket CreateTicket/ ] + }, + ), + 'set rights for user_a' +); + +my $ticket = RT::Ticket->new(RT->SystemUser); +my ($id) = $ticket->Create( + Subject => 'groups limit', + Queue => 'General', + Requestor => $user_a->id, +); +ok( $id, 'created ticket' ); + + +ok( $m->login( user_a => 'password' ), 'logged in as user_a' ); + +$m->goto_ticket($id); + +ok( + !$m->find_link( text => 'Edit' ), 'no Edit link without AdminUsers permission' +); + +ok( + RT::Test->add_rights( + { + Principal => $user_a, + Right => [ qw/AdminUsers ShowConfigTab/ ] + }, + ), + 'add AdminUsers and ShowConfigTab rights for user_a' +); + +$m->goto_ticket($id); +$m->follow_link_ok( { text => 'Edit' }, 'follow the Edit link' ); +is( $m->uri, $url . "/Admin/Users/Memberships.html?id=" . $user_a->id, 'url is right' ); +