fix: defaut_groupe_instructeur for a cloned procedure from another admin without a group with default label

This commit is contained in:
simon lehericey 2023-04-26 10:52:31 +02:00
parent dce2bf3209
commit 0934a672fe
2 changed files with 12 additions and 1 deletions

View file

@ -580,7 +580,8 @@ class Procedure < ApplicationRecord
procedure.draft_revision.types_de_champ_public.each { |tdc| tdc.options&.delete(:old_pj) } procedure.draft_revision.types_de_champ_public.each { |tdc| tdc.options&.delete(:old_pj) }
end end
new_defaut_groupe = procedure.groupe_instructeurs.find_by(label: defaut_groupe_instructeur.label) new_defaut_groupe = procedure.groupe_instructeurs
.find_by(label: defaut_groupe_instructeur.label) || procedure.groupe_instructeurs.first
procedure.update!(defaut_groupe_instructeur: new_defaut_groupe) procedure.update!(defaut_groupe_instructeur: new_defaut_groupe)
procedure procedure

View file

@ -622,6 +622,16 @@ describe Procedure do
let(:administrateur) { create(:administrateur) } let(:administrateur) { create(:administrateur) }
let(:opendata) { false } let(:opendata) { false }
context 'and the procedure does not have a groupe with the defaut label' do
before do
procedure.defaut_groupe_instructeur.update!(label: 'another label')
end
it "affects the first groupe as the defaut groupe" do
expect(subject.defaut_groupe_instructeur).to eq(subject.groupe_instructeurs.first)
end
end
it 'should not clone service' do it 'should not clone service' do
expect(subject.service).to eq(nil) expect(subject.service).to eq(nil)
end end