Merge pull request #10358 from demarches-simplifiees/allow_unsigned_expert

Instructeur: autocomplete les experts ne s'étant pas connectés si la liste est controllée par l'administrateur
This commit is contained in:
LeSim 2024-04-19 14:19:30 +02:00 committed by GitHub
commit 696c8458d7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 12 additions and 8 deletions

View file

@ -34,15 +34,13 @@ class Expert < ApplicationRecord
.joins(:experts_procedures, :user) .joins(:experts_procedures, :user)
.where(experts_procedures: { procedure: procedure }) .where(experts_procedures: { procedure: procedure })
new_or_confirmed_experts = procedure_experts
.where.not(users: { last_sign_in_at: nil })
.or(procedure_experts.where(users: { created_at: 1.day.ago.. }))
suggested_expert = if procedure.experts_require_administrateur_invitation? suggested_expert = if procedure.experts_require_administrateur_invitation?
new_or_confirmed_experts procedure_experts
.where(experts_procedures: { revoked_at: nil }) .where(experts_procedures: { revoked_at: nil })
else else
new_or_confirmed_experts procedure_experts
.where.not(users: { last_sign_in_at: nil })
.or(procedure_experts.where(users: { created_at: 1.day.ago.. }))
end end
suggested_expert suggested_expert

View file

@ -113,8 +113,14 @@ RSpec.describe Expert, type: :model do
end end
context 'when procedure experts need administrateur invitation' do context 'when procedure experts need administrateur invitation' do
it 'returns only confirmed not revoked experts' do it 'returns only not revoked experts' do
expect(subject).to eq([expert.user.email, new_unsigned_expert.user.email].sort) expect(subject).to eq([
expert,
unsigned_expert,
new_unsigned_expert
]
.map { _1.user.email }
.sort)
end end
end end