X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Ft%2Fweb%2Fcustom_frontpage.t;h=ee5e9f58a504f46c2e9c5ab0b6d061b51361b494;hb=de9d037528895f7151a9aead6724ce2df95f9586;hp=45a390ab0078f7dec8406787ebdeea1353f3a220;hpb=63a268637b2d51a8766412617724b9436439deb6;p=freeside.git diff --git a/rt/t/web/custom_frontpage.t b/rt/t/web/custom_frontpage.t index 45a390ab0..ee5e9f58a 100644 --- a/rt/t/web/custom_frontpage.t +++ b/rt/t/web/custom_frontpage.t @@ -1,19 +1,19 @@ -#!/usr/bin/perl -w use strict; +use warnings; -use RT::Test tests => 7; +use RT::Test tests => 19; my ($baseurl, $m) = RT::Test->started_ok; my $url = $m->rt_base_url; -my $user_obj = RT::User->new($RT::SystemUser); +my $user_obj = RT::User->new(RT->SystemUser); my ($ret, $msg) = $user_obj->LoadOrCreateByEmail('customer@example.com'); ok($ret, 'ACL test user creation'); $user_obj->SetName('customer'); $user_obj->SetPrivileged(1); ($ret, $msg) = $user_obj->SetPassword('customer'); $user_obj->PrincipalObj->GrantRight(Right => 'LoadSavedSearch'); -$user_obj->PrincipalObj->GrantRight(Right => 'EditSavedSearch'); +$user_obj->PrincipalObj->GrantRight(Right => 'EditSavedSearches'); $user_obj->PrincipalObj->GrantRight(Right => 'CreateSavedSearch'); $user_obj->PrincipalObj->GrantRight(Right => 'ModifySelf'); @@ -29,9 +29,9 @@ $m->field ( "SavedSearchDescription" => 'stupid tickets'); $m->click_button (name => 'SavedSearchSave'); $m->get ( $url.'Prefs/MyRT.html' ); -$m->content_like (qr/stupid tickets/, 'saved search listed in rt at a glance items'); +$m->content_contains('stupid tickets', 'saved search listed in rt at a glance items'); -ok $m->login, 'we did log in as root'; +ok $m->login('root', 'password', logout => 1), 'we did log in as root'; $m->get ( $url.'Prefs/MyRT.html' ); $m->form_name ('SelectionBox-body'); @@ -58,4 +58,52 @@ $m->click_button (name => 'movedown'); $m->form_name ('SelectionBox-body'); #$m->click_button (name => 'body-Save'); $m->get ( $url ); -$m->content_like (qr'highest priority tickets', 'adds them back'); +$m->content_contains('highest priority tickets', 'adds them back'); + + +#create a saved search with special chars +$m->get( $url . "Search/Build.html" ); +$m->form_name('BuildQuery'); +$m->field( "ValueOfAttachment" => 'stupid' ); +$m->field( "SavedSearchDescription" => 'special chars [test] [_1] ~[_1~]' ); +$m->click_button( name => 'SavedSearchSave' ); +my ($name) = $m->content =~ /value="(RT::User-\d+-SavedSearch-\d+)"/; +ok( $name, 'saved search name' ); +$m->get( $url . 'Prefs/MyRT.html' ); +$m->content_contains( 'special chars [test] [_1] ~[_1~]', + 'saved search listed in rt at a glance items' ); + +$m->get( $url . 'Prefs/MyRT.html' ); +$m->form_name('SelectionBox-body'); +$m->field( + 'body-Available' => [ + 'component-QuickCreate', + 'system-Unowned Tickets', + 'system-My Tickets', + 'saved-' . $name, + ] +); +$m->click_button( name => 'add' ); + +$m->get($url); +$m->content_like( qr/special chars \[test\] \d+ \[_1\]/, + 'special chars in titlebox' ); + + +# Edit a system saved search to contain "[more]" +{ + my $search = RT::Attribute->new( RT->SystemUser ); + $search->LoadByNameAndObject( Name => 'Search - My Tickets', Object => RT->System ); + my ($id, $desc) = ($search->id, RT->SystemUser->loc($search->Description, '"N"')); + ok $id, 'loaded search attribute'; + + $m->get_ok($url); + $m->follow_link_ok({ url_regex => qr"Prefs/Search\.html\?name=.+?Attribute-$id" }, 'Edit link'); + $m->content_contains($desc, "found description: $desc"); + + ok +($search->SetDescription( $search->Description . " [more]" )); + + $m->get_ok($m->uri); # "reload_ok" + $m->content_contains($desc . " [more]", "found description: $desc"); +} +