diff --git a/app/models/instructeur.rb b/app/models/instructeur.rb index 13caa3026..cf2c0fefb 100644 --- a/app/models/instructeur.rb +++ b/app/models/instructeur.rb @@ -113,8 +113,10 @@ class Instructeur < ApplicationRecord .find_by(instructeur: self, dossier: dossier) if follow.present? - demande = follow.dossier.champs.updated_since?(follow.demande_seen_at).any? || follow.dossier.groupe_instructeur_updated_at&.>(follow.demande_seen_at) - demande = false if demande.nil? + demande = follow.dossier.champs.updated_since?(follow.demande_seen_at).any? || + follow.dossier.groupe_instructeur_updated_at&.>(follow.demande_seen_at) || + dossier.identity_updated_at&.>(follow.demande_seen_at) || + false annotations_privees = follow.dossier.champs_private.updated_since?(follow.annotations_privees_seen_at).any? diff --git a/spec/models/instructeur_spec.rb b/spec/models/instructeur_spec.rb index d1cc74571..065e3eb19 100644 --- a/spec/models/instructeur_spec.rb +++ b/spec/models/instructeur_spec.rb @@ -221,6 +221,12 @@ describe Instructeur, type: :model do it { is_expected.to match({ demande: true, annotations_privees: false, avis: false, messagerie: false }) } end + context 'when there is a modification on identity' do + before { dossier.update(identity_updated_at: Time.zone.now) } + + it { is_expected.to match({ demande: true, annotations_privees: false, avis: false, messagerie: false }) } + end + context 'when there is a modification on groupe instructeur' do let(:groupe_instructeur) { create(:groupe_instructeur, instructeurs: [instructeur], procedure: dossier.procedure) } before { dossier.assign_to_groupe_instructeur(groupe_instructeur) }