Instructeur: dedup procedures with multiple gi
This commit is contained in:
parent
5ca5c640a0
commit
21577a0f0b
2 changed files with 14 additions and 1 deletions
|
@ -8,7 +8,7 @@ class Instructeur < ApplicationRecord
|
|||
|
||||
has_many :assign_to, dependent: :destroy
|
||||
has_many :groupe_instructeurs, through: :assign_to
|
||||
has_many :procedures, through: :groupe_instructeurs
|
||||
has_many :procedures, -> { distinct }, through: :groupe_instructeurs
|
||||
|
||||
has_many :assign_to_with_email_notifications, -> { with_email_notifications }, class_name: 'AssignTo', inverse_of: :instructeur
|
||||
has_many :groupe_instructeur_with_email_notifications, through: :assign_to_with_email_notifications, source: :groupe_instructeur
|
||||
|
|
|
@ -410,6 +410,19 @@ describe Instructeur, type: :model do
|
|||
end
|
||||
end
|
||||
|
||||
describe '#procedures' do
|
||||
let(:procedure_a) { create(:procedure) }
|
||||
let(:instructeur_a) { create(:instructeur, groupe_instructeurs: [procedure_a.defaut_groupe_instructeur]) }
|
||||
|
||||
before do
|
||||
gi2 = procedure_a.groupe_instructeurs.create(label: '2')
|
||||
|
||||
instructeur_a.groupe_instructeurs << gi2
|
||||
end
|
||||
|
||||
it { expect(instructeur_a.procedures.all.to_ary).to eq([procedure_a]) }
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def assign(procedure_to_assign)
|
||||
|
|
Loading…
Reference in a new issue