[Rt-commit] rt branch, 3.8-trunk, updated. rt-3.8.6-42-g583d32f

sunnavy at bestpractical.com sunnavy at bestpractical.com
Tue Oct 27 07:28:35 EDT 2009


The branch, 3.8-trunk has been updated
       via  583d32f4848be36dd90ad3e817fddb99f730565a (commit)
       via  79ac4f8c3f729dbe5a8a8e4826836425802878e6 (commit)
       via  ce5f1e7b2d8a86ba9dbe08bd2672d6c113102a48 (commit)
      from  e8c391f7a4119cee3176956fe3d2f7f11599b874 (commit)

Summary of changes:
 share/html/Widgets/SavedSearch |   12 ++++++------
 t/web/saved_search_chart.t     |   30 +++++++++++++++++++++++-------
 2 files changed, 29 insertions(+), 13 deletions(-)

- Log -----------------------------------------------------------------
commit ce5f1e7b2d8a86ba9dbe08bd2672d6c113102a48
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Tue Oct 27 18:38:10 2009 +0800

    only when SaveSearchLoad, we can update Query,ChartType,PrimaryGroupBy,etc.

diff --git a/share/html/Widgets/SavedSearch b/share/html/Widgets/SavedSearch
index a8cb3dd..15af277 100644
--- a/share/html/Widgets/SavedSearch
+++ b/share/html/Widgets/SavedSearch
@@ -70,12 +70,12 @@ if ( my ( $container_object, $search_id ) = _parse_saved_search(
     $self->{SearchId} = $args->{'SavedSearchLoad'} ||
         $args->{'SavedChartSearchId'};
     $self->{CurrentSearch}{Object} = $search;
-    for ( @{ $self->{SearchFields} } ) {
-        # we may updated Query
-        next if $_ eq 'Query' && ! $args->{'SavedSearchLoad'};
-
-        $args->{$_} = $search->SubValue($_) 
+    if ( $args->{'SaveSearchLoad'} ) {
+        for ( @{ $self->{SearchFields} } ) {
+            $args->{$_} = $search->SubValue($_) 
+        }
     }
+
     $args->{SavedChartSearchId} = $args->{'SavedSearchLoad'}
         if $args->{'SavedSearchLoad'};
 # saved search in /Search/Chart.html is different from /Search/Build.html

commit 79ac4f8c3f729dbe5a8a8e4826836425802878e6
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Tue Oct 27 18:39:09 2009 +0800

    we should save all the info when SavedSearchSave, not just Query

diff --git a/share/html/Widgets/SavedSearch b/share/html/Widgets/SavedSearch
index 15af277..d3348b3 100644
--- a/share/html/Widgets/SavedSearch
+++ b/share/html/Widgets/SavedSearch
@@ -109,7 +109,7 @@ if ( $args->{SavedSearchSave} ) {
     if ( my $search = $self->{CurrentSearch}{Object} ) {
         # rename
         $search->SetDescription( $args->{SavedSearchDescription} );
-        $search->SetSubValues( Query => $args->{Query} );
+        $search->SetSubValues(%$SearchParams);
 	    push @actions, loc( '[_1] [_2] updated.', loc($self->{SearchType}), $args->{SavedSearchDescription} );
     }
     else {

commit 583d32f4848be36dd90ad3e817fddb99f730565a
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Tue Oct 27 18:59:10 2009 +0800

    test PrimaryGroupBy and ChartStyle too in saved_search_chart.t

diff --git a/t/web/saved_search_chart.t b/t/web/saved_search_chart.t
index 2eef31c..fe1bc7e 100644
--- a/t/web/saved_search_chart.t
+++ b/t/web/saved_search_chart.t
@@ -2,9 +2,10 @@
 use strict;
 use warnings;
 
-use RT::Test tests => 12;
+use RT::Test tests => 19;
 my ( $url, $m ) = RT::Test->started_ok;
-
+use RT::Attribute;
+my $search = RT::Attribute->new($RT::SystemUser);
 my $ticket = RT::Ticket->new($RT::SystemUser);
 my ( $ret, $msg ) = $ticket->Create(
     Subject   => 'base ticket' . $$,
@@ -37,10 +38,10 @@ $m->submit_form(
 
 $m->content_like( qr/Chart first chart saved/, 'saved first chart' );
 
-my ($search) = $m->content =~ /value="(RT::User-\d+-SavedSearch-\d+)"/;
+my ( $search_uri, $id ) = $m->content =~ /value="(RT::User-\d+-SavedSearch-(\d+))"/;
 $m->submit_form(
     form_name => 'SaveSearch',
-    fields    => { SavedSearchLoad => $search },
+    fields    => { SavedSearchLoad => $search_uri },
 );
 
 $m->content_like( qr/name="SavedSearchDelete"\s+value="Delete"/,
@@ -56,16 +57,31 @@ $m->content_unlike( qr/name="SavedSearchSave"\s+value="Save"/,
 
 $m->submit_form(
     form_name => 'SaveSearch',
-    fields    => { Query => 'id=2' },
-    button    => 'SavedSearchSave',
+    fields    => {
+        Query          => 'id=2',
+        PrimaryGroupBy => 'Status',
+        ChartStyle     => 'pie',
+    },
+    button => 'SavedSearchSave',
 );
 
 $m->content_like( qr/Chart first chart updated/, 'found updated message' );
+$m->content_like( qr/id=2/,                      'Query is updated' );
+$m->content_like( qr/value="Status"\s+selected="selected"/,
+    'PrimaryGroupBy is updated' );
+$m->content_like( qr/value="pie"\s+selected="selected"/,
+    'ChartType is updated' );
+ok( $search->Load($id) );
+is( $search->SubValue('Query'), 'id=2', 'Query is indeed updated' );
+is( $search->SubValue('PrimaryGroupBy'),
+    'Status', 'PrimaryGroupBy is indeed updated' );
+is( $search->SubValue('ChartStyle'), 'pie', 'ChartStyle is indeed updated' );
 
+# finally, let's test delete
 $m->submit_form(
     form_name => 'SaveSearch',
     button    => 'SavedSearchDelete',
 );
-$m->content_like(qr/Chart first chart deleted/, 'found deleted message');
+$m->content_like( qr/Chart first chart deleted/, 'found deleted message' );
 $m->content_unlike( qr/value="RT::User-\d+-SavedSearch-\d+"/,
     'no saved search' );

-----------------------------------------------------------------------


More information about the Rt-commit mailing list