5 use RT::Test tests => 19;
6 my ( $url, $m ) = RT::Test->started_ok;
8 my $search = RT::Attribute->new($RT::SystemUser);
9 my $ticket = RT::Ticket->new($RT::SystemUser);
10 my ( $ret, $msg ) = $ticket->Create(
11 Subject => 'base ticket' . $$,
14 Requestor => 'root@localhost',
15 MIMEObj => MIME::Entity->build(
16 From => 'root@localhost',
18 Subject => 'base ticket' . $$,
22 ok( $ret, "ticket created: $msg" );
24 ok( $m->login, 'logged in' );
26 $m->get_ok( $url . "/Search/Chart.html?Query=" . 'id=1' );
27 my ($owner) = $m->content =~ /value="(RT::User-\d+)"/;
30 form_name => 'SaveSearch',
32 SavedSearchDescription => 'first chart',
33 SavedSearchOwner => $owner,
35 button => 'SavedSearchSave',
38 $m->content_like( qr/Chart first chart saved/, 'saved first chart' );
40 my ( $search_uri, $id ) = $m->content =~ /value="(RT::User-\d+-SavedSearch-(\d+))"/;
42 form_name => 'SaveSearch',
43 fields => { SavedSearchLoad => $search_uri },
46 $m->content_like( qr/name="SavedSearchDelete"\s+value="Delete"/,
47 'found Delete button' );
49 qr/name="SavedSearchDescription"\s+value="first chart"/,
50 'found Description input with the value filled'
52 $m->content_like( qr/name="SavedSearchSave"\s+value="Update"/,
53 'found Update button' );
54 $m->content_unlike( qr/name="SavedSearchSave"\s+value="Save"/,
58 form_name => 'SaveSearch',
61 PrimaryGroupBy => 'Status',
64 button => 'SavedSearchSave',
67 $m->content_like( qr/Chart first chart updated/, 'found updated message' );
68 $m->content_like( qr/id=2/, 'Query is updated' );
69 $m->content_like( qr/value="Status"\s+selected="selected"/,
70 'PrimaryGroupBy is updated' );
71 $m->content_like( qr/value="pie"\s+selected="selected"/,
72 'ChartType is updated' );
73 ok( $search->Load($id) );
74 is( $search->SubValue('Query'), 'id=2', 'Query is indeed updated' );
75 is( $search->SubValue('PrimaryGroupBy'),
76 'Status', 'PrimaryGroupBy is indeed updated' );
77 is( $search->SubValue('ChartStyle'), 'pie', 'ChartStyle is indeed updated' );
79 # finally, let's test delete
81 form_name => 'SaveSearch',
82 button => 'SavedSearchDelete',
84 $m->content_like( qr/Chart first chart deleted/, 'found deleted message' );
85 $m->content_unlike( qr/value="RT::User-\d+-SavedSearch-\d+"/,