From ee37fc88c364a9ba867d3315daa93038329cacff Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sun, 2 Oct 2016 10:11:17 +0000 Subject: [PATCH] Merged r15852 and r15863 (#23839). git-svn-id: http://svn.redmine.org/redmine/branches/3.1-stable@15866 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/query.rb | 2 +- test/integration/issues_test.rb | 41 +++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/app/models/query.rb b/app/models/query.rb index fd5e2753b..800791fdf 100644 --- a/app/models/query.rb +++ b/app/models/query.rb @@ -512,7 +512,7 @@ class Query < ActiveRecord::Base # Returns the SQL sort order that should be prepended for grouping def group_by_sort_order if grouped? && (column = group_by_column) - order = (sort_criteria_order_for(column.name) || column.default_order).try(:upcase) + order = (sort_criteria_order_for(column.name) || column.default_order || 'asc').try(:upcase) column.sortable.is_a?(Array) ? column.sortable.collect {|s| "#{s} #{order}"} : "#{column.sortable} #{order}" diff --git a/test/integration/issues_test.rb b/test/integration/issues_test.rb index 4938cd956..5e49b4e6d 100644 --- a/test/integration/issues_test.rb +++ b/test/integration/issues_test.rb @@ -111,6 +111,47 @@ class IssuesTest < Redmine::IntegrationTest assert_equal 0, Issue.find(1).attachments.length end + def test_next_and_previous_links_should_be_displayed_after_query_grouped_and_sorted_by_version + with_settings :default_language => 'en' do + get '/projects/ecookbook/issues?set_filter=1&group_by=fixed_version&sort=priority:desc,fixed_version,id' + assert_response :success + assert_select 'td.id', :text => '5' + + get '/issues/5' + assert_response :success + assert_select '.next-prev-links .position', :text => '5 of 6' + end + end + + def test_next_and_previous_links_should_be_displayed_after_filter + with_settings :default_language => 'en' do + get '/projects/ecookbook/issues?set_filter=1&tracker_id=1' + assert_response :success + assert_select 'td.id', :text => '5' + + get '/issues/5' + assert_response :success + assert_select '.next-prev-links .position', :text => '3 of 5' + end + end + + def test_next_and_previous_links_should_be_displayed_after_saved_query + query = IssueQuery.create!(:name => 'Calendar Query', + :visibility => IssueQuery::VISIBILITY_PUBLIC, + :filters => {'tracker_id' => {:operator => '=', :values => ['1']}} + ) + + with_settings :default_language => 'en' do + get "/projects/ecookbook/issues?set_filter=1&query_id=#{query.id}" + assert_response :success + assert_select 'td.id', :text => '5' + + get '/issues/5' + assert_response :success + assert_select '.next-prev-links .position', :text => '6 of 8' + end + end + def test_other_formats_links_on_index get '/projects/ecookbook/issues' -- 2.39.5