Set default project sort method prior to initial sort on page loading

This commit is contained in:
David Palubin 2019-07-04 09:29:06 +00:00 committed by Lin Jen-Shin
parent c47eef9403
commit 643100a9b2
3 changed files with 23 additions and 2 deletions

View File

@ -7,8 +7,8 @@ class Dashboard::ProjectsController < Dashboard::ApplicationController
prepend_before_action(only: [:index]) { authenticate_sessionless_user!(:rss) }
before_action :set_non_archived_param
before_action :projects, only: [:index]
before_action :default_sorting
before_action :projects, only: [:index]
skip_cross_project_access_check :index, :starred
def index

View File

@ -0,0 +1,5 @@
---
title: Set default sort method for dashboard projects list
merge_request: 29830
author: David Palubin
type: fixed

View File

@ -11,8 +11,10 @@ describe Dashboard::ProjectsController do
end
context 'user logged in' do
let(:user) { create(:user) }
before do
sign_in create(:user)
sign_in(user)
end
context 'external authorization' do
@ -24,6 +26,20 @@ describe Dashboard::ProjectsController do
expect(response).to have_gitlab_http_status(200)
end
end
it 'orders the projects by last activity by default' do
project = create(:project)
project.add_developer(user)
project.update!(last_repository_updated_at: 3.days.ago, last_activity_at: 3.days.ago)
project2 = create(:project)
project2.add_developer(user)
project2.update!(last_repository_updated_at: 10.days.ago, last_activity_at: 10.days.ago)
get :index
expect(assigns(:projects)).to eq([project, project2])
end
end
end