diff options
Diffstat (limited to 'rt/t/web/ticket_display.t')
-rw-r--r-- | rt/t/web/ticket_display.t | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/rt/t/web/ticket_display.t b/rt/t/web/ticket_display.t new file mode 100644 index 000000000..a9cab0cbf --- /dev/null +++ b/rt/t/web/ticket_display.t @@ -0,0 +1,63 @@ +use strict; +use warnings; + +use RT::Test tests => 18; + +my $queue = RT::Test->load_or_create_queue( Name => 'General' ); + +my $user = RT::Test->load_or_create_user( + Name => 'user', + Password => 'password', +); + +my ( $baseurl, $m ) = RT::Test->started_ok; +ok( + RT::Test->set_rights( + { Principal => $user, Right => [qw(SeeQueue CreateTicket)] }, + ), + 'set rights' +); + +ok $m->login( 'user', 'password' ), 'logged in as user'; + +diag "test ShowTicket right"; +{ + + $m->get_ok( '/Ticket/Create.html?Queue=' . $queue->id, + 'go to ticket create page' ); + my $form = $m->form_name('TicketCreate'); + $m->submit_form( fields => { Subject => 'ticket foo' } ); + + my $ticket = RT::Test->last_ticket; + ok( $ticket->id, 'ticket is created' ); + my $id = $ticket->id; + + $m->content_lacks( "Ticket $id created", 'created ticket' ); + $m->content_contains( "No permission to view newly created ticket #$id", + 'got no permission msg' ); + $m->warning_like( qr/No permission to view newly created ticket #$id/, + 'got no permission warning' ); + + + $m->goto_ticket($id); + $m->content_contains( "No permission to view ticket", + 'got no permission msg' ); + $m->warning_like( qr/No permission to view ticket/, 'got warning' ); + $m->title_is('RT Error'); + + ok( + RT::Test->add_rights( + { Principal => $user, Right => [qw(ShowTicket)] }, + ), + 'add ShowTicket right' + ); + + $m->reload; + + $m->content_lacks( "No permission to view ticket", 'no error msg' ); + $m->title_is( "#$id: ticket foo", 'we can it' ); +} + + +# TODO more /Ticket/Display.html tests here + |