display follower instructeur emails in alphabetic order

This commit is contained in:
simon lehericey 2021-05-04 15:41:38 +02:00 committed by Pierre de La Morinerie
parent 50f679746f
commit 9fd1c604a1
2 changed files with 5 additions and 4 deletions

View file

@ -81,7 +81,7 @@ class DossierProjectionService
.where(dossier_id: dossiers_ids)
.pluck('dossier_id, users.email')
.group_by { |dossier_id, _| dossier_id }
.to_h { |dossier_id, dossier_id_emails| [dossier_id, dossier_id_emails.map { |_, email| email }&.join(', ')] }
.to_h { |dossier_id, dossier_id_emails| [dossier_id, dossier_id_emails.sort.map { |_, email| email }&.join(', ')] }
end
end

View file

@ -136,10 +136,11 @@ describe DossierProjectionService do
let(:column) { 'email' }
let(:dossier) { create(:dossier) }
let!(:follow1) { create(:follow, dossier: dossier, instructeur: create(:instructeur, email: 'user1@host')) }
let!(:follow2) { create(:follow, dossier: dossier, instructeur: create(:instructeur, email: 'user2@host')) }
let!(:follow1) { create(:follow, dossier: dossier, instructeur: create(:instructeur, email: 'b@host')) }
let!(:follow2) { create(:follow, dossier: dossier, instructeur: create(:instructeur, email: 'a@host')) }
let!(:follow3) { create(:follow, dossier: dossier, instructeur: create(:instructeur, email: 'c@host')) }
it { is_expected.to eq "user1@host, user2@host" }
it { is_expected.to eq "a@host, b@host, c@host" }
end
context 'for type_de_champ table' do