summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacopo <beschi.jacopo@gmail.com>2018-08-20 17:41:48 +0200
committerJacopo <beschi.jacopo@gmail.com>2018-08-20 17:41:48 +0200
commitcaa79b26040d5ae84255292e2d447220df7c359a (patch)
tree4f8009f71544319b0cb7ba2cc09765cbbfae962e
parentb34e8f847aef28d93b355bc99cf14f8d70fc258e (diff)
downloadgitlab-ce-49993-fix-remember-sorting-issue-mr.tar.gz
Fallbacks to legacy issuable_sort key49993-fix-remember-sorting-issue-mr
-rw-r--r--app/controllers/concerns/issuable_collections.rb4
-rw-r--r--spec/features/projects/merge_requests/user_sorts_merge_requests_spec.rb10
2 files changed, 13 insertions, 1 deletions
diff --git a/app/controllers/concerns/issuable_collections.rb b/app/controllers/concerns/issuable_collections.rb
index 87a29914152..22b39f47bf0 100644
--- a/app/controllers/concerns/issuable_collections.rb
+++ b/app/controllers/concerns/issuable_collections.rb
@@ -108,6 +108,8 @@ module IssuableCollections
def set_sort_order_from_cookie
cookies[remember_sorting_key] = params[:sort] if params[:sort].present?
+ # fallback to legacy cookie value for backward compatibility
+ cookies[remember_sorting_key] ||= cookies['issuable_sort']
cookies[remember_sorting_key] = update_cookie_value(cookies[remember_sorting_key])
params[:sort] = cookies[remember_sorting_key]
end
@@ -146,7 +148,7 @@ module IssuableCollections
end
def collection_type
- @collection_type ||= case finder_type.to_s
+ @collection_type ||= case finder_type.name
when 'IssuesFinder'
'Issue'
when 'MergeRequestsFinder'
diff --git a/spec/features/projects/merge_requests/user_sorts_merge_requests_spec.rb b/spec/features/projects/merge_requests/user_sorts_merge_requests_spec.rb
index f059908540f..82cfe600d52 100644
--- a/spec/features/projects/merge_requests/user_sorts_merge_requests_spec.rb
+++ b/spec/features/projects/merge_requests/user_sorts_merge_requests_spec.rb
@@ -1,6 +1,8 @@
require 'spec_helper'
describe 'User sorts merge requests' do
+ include CookieHelper
+
let!(:merge_request) { create(:merge_request, source_project: project, target_project: project) }
let!(:merge_request2) do
create(:merge_request_with_diffs, source_project: project, target_project: project, source_branch: 'merge-test')
@@ -36,6 +38,14 @@ describe 'User sorts merge requests' do
expect(find('.issues-filters a.is-active')).to have_content('Milestone')
end
+ it 'fallbacks to issuable_sort cookie key when remembering the sorting option' do
+ set_cookie('issuable_sort', 'milestone')
+
+ visit(merge_requests_dashboard_path(assignee_id: user.id))
+
+ expect(find('.issues-filters a.is-active')).to have_content('Milestone')
+ end
+
it 'separates remember sorting with issues' do
create(:issue, project: project)