[Rails5] Rename sort
methods to sort_by_attribute
This commit is contained in:
parent
e9ea520878
commit
3d3b46f344
22 changed files with 35 additions and 35 deletions
|
@ -5,7 +5,7 @@ class Admin::GroupsController < Admin::ApplicationController
|
|||
|
||||
def index
|
||||
@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.page(params[:page])
|
||||
end
|
||||
|
|
|
@ -4,7 +4,7 @@ class Admin::UsersController < Admin::ApplicationController
|
|||
def index
|
||||
@users = User.order_name_asc.filter(params[:filter])
|
||||
@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])
|
||||
end
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ module GroupTree
|
|||
end
|
||||
|
||||
@groups = @groups.with_selects_for_list(archived: params[:archived])
|
||||
.sort(@sort = params[:sort])
|
||||
.sort_by_attribute(@sort = params[:sort])
|
||||
.page(params[:page])
|
||||
|
||||
respond_to do |format|
|
||||
|
|
|
@ -17,7 +17,7 @@ class Groups::GroupMembersController < Groups::ApplicationController
|
|||
@members = GroupMembersFinder.new(@group).execute
|
||||
@members = @members.non_invite unless can?(current_user, :admin_group, @group)
|
||||
@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 = present_members(@members.includes(:user))
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ class Projects::MilestonesController < Projects::ApplicationController
|
|||
|
||||
def index
|
||||
@sort = params[:sort] || 'due_date_asc'
|
||||
@milestones = milestones.sort(@sort)
|
||||
@milestones = milestones.sort_by_attribute(@sort)
|
||||
|
||||
respond_to do |format|
|
||||
format.html do
|
||||
|
|
|
@ -21,7 +21,7 @@ class Projects::ProjectMembersController < Projects::ApplicationController
|
|||
@group_links = @group_links.where(group_id: @project.invited_groups.search(params[:search]).select(:id))
|
||||
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))
|
||||
@project_member = @project.project_members.new
|
||||
end
|
||||
|
|
|
@ -62,6 +62,6 @@ class Admin::ProjectsFinder
|
|||
|
||||
def sort(items)
|
||||
sort = params.fetch(:sort) { 'latest_activity_desc' }
|
||||
items.sort(sort)
|
||||
items.sort_by_attribute(sort)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -337,7 +337,7 @@ class IssuableFinder
|
|||
def sort(items)
|
||||
# Ensure we always have an explicit sort order (instead of inheriting
|
||||
# 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
|
||||
|
||||
def by_assignee(items)
|
||||
|
|
|
@ -124,7 +124,7 @@ class ProjectsFinder < UnionFinder
|
|||
end
|
||||
|
||||
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
|
||||
|
||||
def by_archived(projects)
|
||||
|
|
|
@ -119,7 +119,7 @@ class TodosFinder
|
|||
end
|
||||
|
||||
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
|
||||
|
||||
def by_action(items)
|
||||
|
|
|
@ -137,7 +137,7 @@ module Issuable
|
|||
fuzzy_search(query, [:title, :description])
|
||||
end
|
||||
|
||||
def sort(method, excluded_labels: [])
|
||||
def sort_by_attribute(method, excluded_labels: [])
|
||||
sorted =
|
||||
case method.to_s
|
||||
when 'downvotes_desc' then order_downvotes_desc
|
||||
|
|
|
@ -45,11 +45,11 @@ module Milestoneish
|
|||
end
|
||||
|
||||
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
|
||||
|
||||
def sorted_merge_requests
|
||||
merge_requests.sort('label_priority')
|
||||
merge_requests.sort_by_attribute('label_priority')
|
||||
end
|
||||
|
||||
def upcoming?
|
||||
|
|
|
@ -53,7 +53,7 @@ class Group < Namespace
|
|||
Gitlab::Database.postgresql?
|
||||
end
|
||||
|
||||
def sort(method)
|
||||
def sort_by_attribute(method)
|
||||
if method == 'storage_size_desc'
|
||||
# storage_size is a virtual column so we need to
|
||||
# pass a string to avoid AR adding the table name
|
||||
|
|
|
@ -116,7 +116,7 @@ class Issue < ActiveRecord::Base
|
|||
'project_id'
|
||||
end
|
||||
|
||||
def self.sort(method, excluded_labels: [])
|
||||
def self.sort_by_attribute(method, excluded_labels: [])
|
||||
case method.to_s
|
||||
when 'due_date' then order_due_date_asc
|
||||
when 'due_date_asc' then order_due_date_asc
|
||||
|
|
|
@ -96,7 +96,7 @@ class Member < ActiveRecord::Base
|
|||
joins(:user).merge(User.search(query))
|
||||
end
|
||||
|
||||
def sort(method)
|
||||
def sort_by_attribute(method)
|
||||
case method.to_s
|
||||
when 'access_level_asc' then reorder(access_level: :asc)
|
||||
when 'access_level_desc' then reorder(access_level: :desc)
|
||||
|
|
|
@ -138,7 +138,7 @@ class Milestone < ActiveRecord::Base
|
|||
User.joins(assigned_issues: :milestone).where("milestones.id = ?", id).uniq
|
||||
end
|
||||
|
||||
def self.sort(method)
|
||||
def self.sort_by_attribute(method)
|
||||
case method.to_s
|
||||
when 'due_date_asc'
|
||||
reorder(Gitlab::Database.nulls_last_order('due_date', 'ASC'))
|
||||
|
|
|
@ -436,7 +436,7 @@ class Project < ActiveRecord::Base
|
|||
Gitlab::VisibilityLevel.options
|
||||
end
|
||||
|
||||
def sort(method)
|
||||
def sort_by_attribute(method)
|
||||
case method.to_s
|
||||
when 'storage_size_desc'
|
||||
# storage_size is a joined column so we need to
|
||||
|
|
|
@ -50,7 +50,7 @@ class Todo < ActiveRecord::Base
|
|||
# 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
|
||||
# selected.
|
||||
def sort(method)
|
||||
def sort_by_attribute(method)
|
||||
sorted =
|
||||
case method.to_s
|
||||
when 'priority', 'label_priority' then order_by_labels_priority
|
||||
|
|
|
@ -256,7 +256,7 @@ class User < ActiveRecord::Base
|
|||
end
|
||||
end
|
||||
|
||||
def sort(method)
|
||||
def sort_by_attribute(method)
|
||||
order_method = method || 'id_desc'
|
||||
|
||||
case order_method.to_s
|
||||
|
|
|
@ -176,7 +176,7 @@ describe Issuable do
|
|||
end
|
||||
end
|
||||
|
||||
describe "#sort" do
|
||||
describe "#sort_by_attribute" do
|
||||
let(:project) { create(:project) }
|
||||
|
||||
context "by milestone due date" do
|
||||
|
@ -193,12 +193,12 @@ describe Issuable do
|
|||
let!(:issue3) { create(:issue, project: project) }
|
||||
|
||||
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])
|
||||
end
|
||||
|
||||
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])
|
||||
end
|
||||
end
|
||||
|
@ -210,7 +210,7 @@ describe Issuable do
|
|||
|
||||
it 'has no duplicates across pages' do
|
||||
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
|
||||
|
||||
expect(sorted_issue_ids).to eq(sorted_issue_ids.uniq)
|
||||
|
|
|
@ -1451,7 +1451,7 @@ describe User do
|
|||
end
|
||||
end
|
||||
|
||||
describe '#sort' do
|
||||
describe '#sort_by_attribute' do
|
||||
before do
|
||||
described_class.delete_all
|
||||
@user = create :user, created_at: Date.today, current_sign_in_at: Date.today, name: 'Alpha'
|
||||
|
@ -1460,7 +1460,7 @@ describe User do
|
|||
end
|
||||
|
||||
context 'when sort by recent_sign_in' do
|
||||
let(:users) { described_class.sort('recent_sign_in') }
|
||||
let(:users) { described_class.sort_by_attribute('recent_sign_in') }
|
||||
|
||||
it 'sorts users by recent sign-in time' do
|
||||
expect(users.first).to eq(@user)
|
||||
|
@ -1473,7 +1473,7 @@ describe User do
|
|||
end
|
||||
|
||||
context 'when sort by oldest_sign_in' do
|
||||
let(:users) { described_class.sort('oldest_sign_in') }
|
||||
let(:users) { described_class.sort_by_attribute('oldest_sign_in') }
|
||||
|
||||
it 'sorts users by the oldest sign-in time' do
|
||||
expect(users.first).to eq(@user1)
|
||||
|
@ -1486,15 +1486,15 @@ describe User do
|
|||
end
|
||||
|
||||
it 'sorts users in descending order by their creation time' do
|
||||
expect(described_class.sort('created_desc').first).to eq(@user)
|
||||
expect(described_class.sort_by_attribute('created_desc').first).to eq(@user)
|
||||
end
|
||||
|
||||
it 'sorts users in ascending order by their creation time' do
|
||||
expect(described_class.sort('created_asc').first).to eq(@user2)
|
||||
expect(described_class.sort_by_attribute('created_asc').first).to eq(@user2)
|
||||
end
|
||||
|
||||
it 'sorts users by id in descending order when nil is passed' do
|
||||
expect(described_class.sort(nil).first).to eq(@user2)
|
||||
expect(described_class.sort_by_attribute(nil).first).to eq(@user2)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ describe 'cycle analytics events' do
|
|||
it 'lists the issue events' do
|
||||
get project_cycle_analytics_issue_path(project, format: :json)
|
||||
|
||||
first_issue_iid = project.issues.sort(:created_desc).pluck(:iid).first.to_s
|
||||
first_issue_iid = project.issues.sort_by_attribute(:created_desc).pluck(:iid).first.to_s
|
||||
|
||||
expect(json_response['events']).not_to be_empty
|
||||
expect(json_response['events'].first['iid']).to eq(first_issue_iid)
|
||||
|
@ -32,7 +32,7 @@ describe 'cycle analytics events' do
|
|||
it 'lists the plan events' do
|
||||
get project_cycle_analytics_plan_path(project, format: :json)
|
||||
|
||||
first_mr_short_sha = project.merge_requests.sort(:created_asc).first.commits.first.short_id
|
||||
first_mr_short_sha = project.merge_requests.sort_by_attribute(:created_asc).first.commits.first.short_id
|
||||
|
||||
expect(json_response['events']).not_to be_empty
|
||||
expect(json_response['events'].first['short_sha']).to eq(first_mr_short_sha)
|
||||
|
@ -43,7 +43,7 @@ describe 'cycle analytics events' do
|
|||
|
||||
expect(json_response['events']).not_to be_empty
|
||||
|
||||
first_mr_iid = project.merge_requests.sort(:created_desc).pluck(:iid).first.to_s
|
||||
first_mr_iid = project.merge_requests.sort_by_attribute(:created_desc).pluck(:iid).first.to_s
|
||||
|
||||
expect(json_response['events'].first['iid']).to eq(first_mr_iid)
|
||||
end
|
||||
|
@ -58,7 +58,7 @@ describe 'cycle analytics events' do
|
|||
it 'lists the review events' do
|
||||
get project_cycle_analytics_review_path(project, format: :json)
|
||||
|
||||
first_mr_iid = project.merge_requests.sort(:created_desc).pluck(:iid).first.to_s
|
||||
first_mr_iid = project.merge_requests.sort_by_attribute(:created_desc).pluck(:iid).first.to_s
|
||||
|
||||
expect(json_response['events']).not_to be_empty
|
||||
expect(json_response['events'].first['iid']).to eq(first_mr_iid)
|
||||
|
@ -74,7 +74,7 @@ describe 'cycle analytics events' do
|
|||
it 'lists the production events' do
|
||||
get project_cycle_analytics_production_path(project, format: :json)
|
||||
|
||||
first_issue_iid = project.issues.sort(:created_desc).pluck(:iid).first.to_s
|
||||
first_issue_iid = project.issues.sort_by_attribute(:created_desc).pluck(:iid).first.to_s
|
||||
|
||||
expect(json_response['events']).not_to be_empty
|
||||
expect(json_response['events'].first['iid']).to eq(first_issue_iid)
|
||||
|
|
Loading…
Reference in a new issue