diff --git a/app/controllers/users/dossiers_controller.rb b/app/controllers/users/dossiers_controller.rb index 29d476dfa..e664f5b0b 100644 --- a/app/controllers/users/dossiers_controller.rb +++ b/app/controllers/users/dossiers_controller.rb @@ -1,7 +1,7 @@ class Users::DossiersController < UsersController before_action :authenticate_user! def index - @dossiers = current_user.dossiers.decorate + @dossiers = current_user.dossiers.order(updated_at: 'DESC').decorate end def show diff --git a/spec/controllers/users/dossiers_controller_spec.rb b/spec/controllers/users/dossiers_controller_spec.rb index 36934736b..8e17bfa7a 100644 --- a/spec/controllers/users/dossiers_controller_spec.rb +++ b/spec/controllers/users/dossiers_controller_spec.rb @@ -3,6 +3,7 @@ require 'spec_helper' describe Users::DossiersController, type: :controller do let(:user) { create(:user) } describe '.index' do + let!(:dossier) { create(:dossier, :with_entreprise, :with_procedure, user: user) } subject { get :index } context 'when user is not logged in' do it { is_expected.to redirect_to('/users/sign_in') } diff --git a/spec/features/users/list_dossiers_spec.rb b/spec/features/users/list_dossiers_spec.rb index 236ef4188..bef26b77a 100644 --- a/spec/features/users/list_dossiers_spec.rb +++ b/spec/features/users/list_dossiers_spec.rb @@ -3,9 +3,11 @@ require 'spec_helper' feature 'user access to the list of his dossier' do let(:user) { create(:user) } + let!(:last_updated_dossier) { create(:dossier, :with_procedure, user: user)} let!(:dossier1) { create(:dossier, :with_procedure, user: user, nom_projet: 'mon permier dossier') } let!(:dossier2) { create(:dossier, :with_user, nom_projet: 'mon deuxième dossier') } before do + last_updated_dossier.update_attributes(nom_projet: 'salut la compagnie') visit root_path page.find_by_id('user_email').set user.email page.find_by_id('user_password').set user.password @@ -15,6 +17,11 @@ feature 'user access to the list of his dossier' do expect(page).to have_content(dossier1.nom_projet) expect(page).not_to have_content(dossier2.nom_projet) end + + scenario 'the list must be order by last updated' do + expect(page.body).to match(/#{last_updated_dossier.nom_projet}.*#{dossier1.nom_projet}/m) + end + context 'when user clicks on a projet in list' do before do page.click_on dossier1.nom_projet