first pass RT4 merge, RT#13852
[freeside.git] / rt / t / web / saved_search_update.t
1 #!/usr/bin/perl
2
3 use strict;
4 use warnings;
5
6 use RT::Test tests => 18;
7
8 my $root = RT::User->new( $RT::SystemUser );
9 $root->Load('root');
10 my $uid = $root->id;
11 ok( $uid, 'loaded root' );
12
13 my $group = RT::Group->new( $RT::SystemUser );
14 my ($gid) = $group->CreateUserDefinedGroup( Name => 'foo' );
15 ok( $gid, 'created group foo');
16 ok( $group->AddMember( $root->PrincipalId ) );
17
18 my ( $baseurl, $m ) = RT::Test->started_ok;
19 ok($m->login, 'logged in');
20
21 $m->follow_link_ok({text => "Tickets"}, "to query builder");
22
23 $m->form_name("BuildQuery");
24
25 $m->field(ValueOfid => 10 );
26 $m->click("AddClause");
27 $m->content_contains( 'id < 10', "added new clause");
28
29 $m->form_name("BuildQuery");
30 $m->field(SavedSearchDescription => 'user_saved');
31 $m->click("SavedSearchSave");
32
33 $m->form_name("BuildQuery");
34 is($m->value('SavedSearchDescription'), 'user_saved', "name is correct");
35 like($m->value('SavedSearchOwner'), qr/^RT::User-\d+$/, "name is correct");
36 ok(
37     scalar grep { $_ eq "RT::Group-$gid" }
38       $m->current_form->find_input('SavedSearchOwner')->possible_values,
39     'found group foo'
40 );
41 $m->field(SavedSearchDescription => 'group_saved');
42 $m->select(SavedSearchOwner => "RT::Group-$gid");
43 $m->click("SavedSearchSave");
44
45 $m->form_name("BuildQuery");
46 is($m->value('SavedSearchOwner'), "RT::Group-$gid", "privacy is correct");
47 is($m->value('SavedSearchDescription'), 'group_saved', "name is correct");
48 $m->select(SavedSearchOwner => "RT::User-$uid");
49 $m->field(SavedSearchDescription => 'user_saved');
50 $m->click("SavedSearchSave");
51
52
53 $m->form_name("BuildQuery");
54 is($m->value('SavedSearchOwner'), "RT::User-$uid", "privacy is correct");
55 is($m->value('SavedSearchDescription'), 'user_saved', "name is correct");
56 $m->select(SavedSearchOwner => "RT::System-1");
57 $m->field(SavedSearchDescription => 'system_saved');
58 $m->click("SavedSearchSave");
59
60 $m->form_name("BuildQuery");
61 is($m->value('SavedSearchOwner'), "RT::System-1", "privacy is correct");
62 is($m->value('SavedSearchDescription'), 'system_saved', "name is correct");
63