From 9e33b1ee6d3f33a8f654ee890aa107ee0926ed18 Mon Sep 17 00:00:00 2001 From: simon lehericey Date: Fri, 19 Apr 2024 13:03:09 +0200 Subject: [PATCH] fix: allow unsigned expert when restricted list --- app/models/expert.rb | 10 ++++------ spec/models/expert_spec.rb | 10 ++++++++-- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/app/models/expert.rb b/app/models/expert.rb index 1bf87e7a8..53a08bd90 100644 --- a/app/models/expert.rb +++ b/app/models/expert.rb @@ -34,15 +34,13 @@ class Expert < ApplicationRecord .joins(:experts_procedures, :user) .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? - new_or_confirmed_experts + procedure_experts .where(experts_procedures: { revoked_at: nil }) 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 suggested_expert diff --git a/spec/models/expert_spec.rb b/spec/models/expert_spec.rb index 3ac083910..a88a13054 100644 --- a/spec/models/expert_spec.rb +++ b/spec/models/expert_spec.rb @@ -113,8 +113,14 @@ RSpec.describe Expert, type: :model do end context 'when procedure experts need administrateur invitation' do - it 'returns only confirmed not revoked experts' do - expect(subject).to eq([expert.user.email, new_unsigned_expert.user.email].sort) + it 'returns only not revoked experts' do + expect(subject).to eq([ + expert, + unsigned_expert, + new_unsigned_expert + ] + .map { _1.user.email } + .sort) end end