Skip to content
Snippets Groups Projects
Commit 3d3b46f3 authored by blackst0ne's avatar blackst0ne Committed by Sean McGivern
Browse files

[Rails5] Rename `sort` methods to `sort_by_attribute`

parent e9ea5208
No related branches found
No related tags found
No related merge requests found
Showing
with 24 additions and 24 deletions
Loading
@@ -5,7 +5,7 @@ class Admin::GroupsController < Admin::ApplicationController
Loading
@@ -5,7 +5,7 @@ class Admin::GroupsController < Admin::ApplicationController
   
def index def index
@groups = Group.with_statistics.with_route @groups = Group.with_statistics.with_route
@groups = @groups.sort(@sort = params[:sort]) @groups = @groups.sort_by_attribute(@sort = params[:sort])
@groups = @groups.search(params[:name]) if params[:name].present? @groups = @groups.search(params[:name]) if params[:name].present?
@groups = @groups.page(params[:page]) @groups = @groups.page(params[:page])
end end
Loading
Loading
Loading
@@ -4,7 +4,7 @@ class Admin::UsersController < Admin::ApplicationController
Loading
@@ -4,7 +4,7 @@ class Admin::UsersController < Admin::ApplicationController
def index def index
@users = User.order_name_asc.filter(params[:filter]) @users = User.order_name_asc.filter(params[:filter])
@users = @users.search_with_secondary_emails(params[:search_query]) if params[:search_query].present? @users = @users.search_with_secondary_emails(params[:search_query]) if params[:search_query].present?
@users = @users.sort(@sort = params[:sort]) @users = @users.sort_by_attribute(@sort = params[:sort])
@users = @users.page(params[:page]) @users = @users.page(params[:page])
end end
   
Loading
Loading
Loading
@@ -14,7 +14,7 @@ module GroupTree
Loading
@@ -14,7 +14,7 @@ module GroupTree
end end
   
@groups = @groups.with_selects_for_list(archived: params[:archived]) @groups = @groups.with_selects_for_list(archived: params[:archived])
.sort(@sort = params[:sort]) .sort_by_attribute(@sort = params[:sort])
.page(params[:page]) .page(params[:page])
   
respond_to do |format| respond_to do |format|
Loading
Loading
Loading
@@ -17,7 +17,7 @@ class Groups::GroupMembersController < Groups::ApplicationController
Loading
@@ -17,7 +17,7 @@ class Groups::GroupMembersController < Groups::ApplicationController
@members = GroupMembersFinder.new(@group).execute @members = GroupMembersFinder.new(@group).execute
@members = @members.non_invite unless can?(current_user, :admin_group, @group) @members = @members.non_invite unless can?(current_user, :admin_group, @group)
@members = @members.search(params[:search]) if params[:search].present? @members = @members.search(params[:search]) if params[:search].present?
@members = @members.sort(@sort) @members = @members.sort_by_attribute(@sort)
@members = @members.page(params[:page]).per(50) @members = @members.page(params[:page]).per(50)
@members = present_members(@members.includes(:user)) @members = present_members(@members.includes(:user))
   
Loading
Loading
Loading
@@ -14,7 +14,7 @@ class Projects::MilestonesController < Projects::ApplicationController
Loading
@@ -14,7 +14,7 @@ class Projects::MilestonesController < Projects::ApplicationController
   
def index def index
@sort = params[:sort] || 'due_date_asc' @sort = params[:sort] || 'due_date_asc'
@milestones = milestones.sort(@sort) @milestones = milestones.sort_by_attribute(@sort)
   
respond_to do |format| respond_to do |format|
format.html do format.html do
Loading
Loading
Loading
@@ -21,7 +21,7 @@ class Projects::ProjectMembersController < Projects::ApplicationController
Loading
@@ -21,7 +21,7 @@ class Projects::ProjectMembersController < Projects::ApplicationController
@group_links = @group_links.where(group_id: @project.invited_groups.search(params[:search]).select(:id)) @group_links = @group_links.where(group_id: @project.invited_groups.search(params[:search]).select(:id))
end end
   
@project_members = present_members(@project_members.sort(@sort).page(params[:page])) @project_members = present_members(@project_members.sort_by_attribute(@sort).page(params[:page]))
@requesters = present_members(AccessRequestsFinder.new(@project).execute(current_user)) @requesters = present_members(AccessRequestsFinder.new(@project).execute(current_user))
@project_member = @project.project_members.new @project_member = @project.project_members.new
end end
Loading
Loading
Loading
@@ -62,6 +62,6 @@ class Admin::ProjectsFinder
Loading
@@ -62,6 +62,6 @@ class Admin::ProjectsFinder
   
def sort(items) def sort(items)
sort = params.fetch(:sort) { 'latest_activity_desc' } sort = params.fetch(:sort) { 'latest_activity_desc' }
items.sort(sort) items.sort_by_attribute(sort)
end end
end end
Loading
@@ -337,7 +337,7 @@ class IssuableFinder
Loading
@@ -337,7 +337,7 @@ class IssuableFinder
def sort(items) def sort(items)
# Ensure we always have an explicit sort order (instead of inheriting # Ensure we always have an explicit sort order (instead of inheriting
# multiple orders when combining ActiveRecord::Relation objects). # multiple orders when combining ActiveRecord::Relation objects).
params[:sort] ? items.sort(params[:sort], excluded_labels: label_names) : items.reorder(id: :desc) params[:sort] ? items.sort_by_attribute(params[:sort], excluded_labels: label_names) : items.reorder(id: :desc)
end end
   
def by_assignee(items) def by_assignee(items)
Loading
Loading
Loading
@@ -124,7 +124,7 @@ class ProjectsFinder < UnionFinder
Loading
@@ -124,7 +124,7 @@ class ProjectsFinder < UnionFinder
end end
   
def sort(items) def sort(items)
params[:sort].present? ? items.sort(params[:sort]) : items.order_id_desc params[:sort].present? ? items.sort_by_attribute(params[:sort]) : items.order_id_desc
end end
   
def by_archived(projects) def by_archived(projects)
Loading
Loading
Loading
@@ -119,7 +119,7 @@ class TodosFinder
Loading
@@ -119,7 +119,7 @@ class TodosFinder
end end
   
def sort(items) def sort(items)
params[:sort] ? items.sort(params[:sort]) : items.order_id_desc params[:sort] ? items.sort_by_attribute(params[:sort]) : items.order_id_desc
end end
   
def by_action(items) def by_action(items)
Loading
Loading
Loading
@@ -137,7 +137,7 @@ module Issuable
Loading
@@ -137,7 +137,7 @@ module Issuable
fuzzy_search(query, [:title, :description]) fuzzy_search(query, [:title, :description])
end end
   
def sort(method, excluded_labels: []) def sort_by_attribute(method, excluded_labels: [])
sorted = sorted =
case method.to_s case method.to_s
when 'downvotes_desc' then order_downvotes_desc when 'downvotes_desc' then order_downvotes_desc
Loading
Loading
Loading
@@ -45,11 +45,11 @@ module Milestoneish
Loading
@@ -45,11 +45,11 @@ module Milestoneish
end end
   
def sorted_issues(user) def sorted_issues(user)
issues_visible_to_user(user).preload_associations.sort('label_priority') issues_visible_to_user(user).preload_associations.sort_by_attribute('label_priority')
end end
   
def sorted_merge_requests def sorted_merge_requests
merge_requests.sort('label_priority') merge_requests.sort_by_attribute('label_priority')
end end
   
def upcoming? def upcoming?
Loading
Loading
Loading
@@ -53,7 +53,7 @@ class Group < Namespace
Loading
@@ -53,7 +53,7 @@ class Group < Namespace
Gitlab::Database.postgresql? Gitlab::Database.postgresql?
end end
   
def sort(method) def sort_by_attribute(method)
if method == 'storage_size_desc' if method == 'storage_size_desc'
# storage_size is a virtual column so we need to # storage_size is a virtual column so we need to
# pass a string to avoid AR adding the table name # pass a string to avoid AR adding the table name
Loading
Loading
Loading
@@ -116,7 +116,7 @@ class Issue < ActiveRecord::Base
Loading
@@ -116,7 +116,7 @@ class Issue < ActiveRecord::Base
'project_id' 'project_id'
end end
   
def self.sort(method, excluded_labels: []) def self.sort_by_attribute(method, excluded_labels: [])
case method.to_s case method.to_s
when 'due_date' then order_due_date_asc when 'due_date' then order_due_date_asc
when 'due_date_asc' then order_due_date_asc when 'due_date_asc' then order_due_date_asc
Loading
Loading
Loading
@@ -96,7 +96,7 @@ class Member < ActiveRecord::Base
Loading
@@ -96,7 +96,7 @@ class Member < ActiveRecord::Base
joins(:user).merge(User.search(query)) joins(:user).merge(User.search(query))
end end
   
def sort(method) def sort_by_attribute(method)
case method.to_s case method.to_s
when 'access_level_asc' then reorder(access_level: :asc) when 'access_level_asc' then reorder(access_level: :asc)
when 'access_level_desc' then reorder(access_level: :desc) when 'access_level_desc' then reorder(access_level: :desc)
Loading
Loading
Loading
@@ -138,7 +138,7 @@ class Milestone < ActiveRecord::Base
Loading
@@ -138,7 +138,7 @@ class Milestone < ActiveRecord::Base
User.joins(assigned_issues: :milestone).where("milestones.id = ?", id).uniq User.joins(assigned_issues: :milestone).where("milestones.id = ?", id).uniq
end end
   
def self.sort(method) def self.sort_by_attribute(method)
case method.to_s case method.to_s
when 'due_date_asc' when 'due_date_asc'
reorder(Gitlab::Database.nulls_last_order('due_date', 'ASC')) reorder(Gitlab::Database.nulls_last_order('due_date', 'ASC'))
Loading
Loading
Loading
@@ -436,7 +436,7 @@ class Project < ActiveRecord::Base
Loading
@@ -436,7 +436,7 @@ class Project < ActiveRecord::Base
Gitlab::VisibilityLevel.options Gitlab::VisibilityLevel.options
end end
   
def sort(method) def sort_by_attribute(method)
case method.to_s case method.to_s
when 'storage_size_desc' when 'storage_size_desc'
# storage_size is a joined column so we need to # storage_size is a joined column so we need to
Loading
Loading
Loading
@@ -50,7 +50,7 @@ class Todo < ActiveRecord::Base
Loading
@@ -50,7 +50,7 @@ class Todo < ActiveRecord::Base
# Priority sorting isn't displayed in the dropdown, because we don't show # Priority sorting isn't displayed in the dropdown, because we don't show
# milestones, but still show something if the user has a URL with that # milestones, but still show something if the user has a URL with that
# selected. # selected.
def sort(method) def sort_by_attribute(method)
sorted = sorted =
case method.to_s case method.to_s
when 'priority', 'label_priority' then order_by_labels_priority when 'priority', 'label_priority' then order_by_labels_priority
Loading
Loading
Loading
@@ -256,7 +256,7 @@ class User < ActiveRecord::Base
Loading
@@ -256,7 +256,7 @@ class User < ActiveRecord::Base
end end
end end
   
def sort(method) def sort_by_attribute(method)
order_method = method || 'id_desc' order_method = method || 'id_desc'
   
case order_method.to_s case order_method.to_s
Loading
Loading
Loading
@@ -176,7 +176,7 @@ describe Issuable do
Loading
@@ -176,7 +176,7 @@ describe Issuable do
end end
end end
   
describe "#sort" do describe "#sort_by_attribute" do
let(:project) { create(:project) } let(:project) { create(:project) }
   
context "by milestone due date" do context "by milestone due date" do
Loading
@@ -193,12 +193,12 @@ describe Issuable do
Loading
@@ -193,12 +193,12 @@ describe Issuable do
let!(:issue3) { create(:issue, project: project) } let!(:issue3) { create(:issue, project: project) }
   
it "sorts desc" do it "sorts desc" do
issues = project.issues.sort('milestone_due_desc') issues = project.issues.sort_by_attribute('milestone_due_desc')
expect(issues).to match_array([issue2, issue1, issue, issue3]) expect(issues).to match_array([issue2, issue1, issue, issue3])
end end
   
it "sorts asc" do it "sorts asc" do
issues = project.issues.sort('milestone_due_asc') issues = project.issues.sort_by_attribute('milestone_due_asc')
expect(issues).to match_array([issue1, issue2, issue, issue3]) expect(issues).to match_array([issue1, issue2, issue, issue3])
end end
end end
Loading
@@ -210,7 +210,7 @@ describe Issuable do
Loading
@@ -210,7 +210,7 @@ describe Issuable do
   
it 'has no duplicates across pages' do it 'has no duplicates across pages' do
sorted_issue_ids = 1.upto(10).map do |i| sorted_issue_ids = 1.upto(10).map do |i|
project.issues.sort('milestone_due_desc').page(i).per(1).first.id project.issues.sort_by_attribute('milestone_due_desc').page(i).per(1).first.id
end end
   
expect(sorted_issue_ids).to eq(sorted_issue_ids.uniq) expect(sorted_issue_ids).to eq(sorted_issue_ids.uniq)
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment