clone groupe instructeur service

if admin owns original procedure
This commit is contained in:
Christophe Robillard 2023-08-29 14:41:28 +02:00
parent fa70cffa31
commit 587960cfd9
2 changed files with 14 additions and 2 deletions

View file

@ -467,7 +467,7 @@ class Procedure < ApplicationRecord
dossier_submitted_message: []
}
}
include_list[:groupe_instructeurs] = :instructeurs if !is_different_admin
include_list[:groupe_instructeurs] = [:instructeurs, :contact_information] if !is_different_admin
procedure = self.deep_clone(include: include_list) do |original, kopy|
PiecesJustificativesService.clone_attachments(original, kopy)
end

View file

@ -563,7 +563,7 @@ describe Procedure do
let(:logo) { Rack::Test::UploadedFile.new('spec/fixtures/files/white.png', 'image/png') }
let(:signature) { Rack::Test::UploadedFile.new('spec/fixtures/files/black.png', 'image/png') }
let(:groupe_instructeur_1) { create(:groupe_instructeur, procedure: procedure, label: "groupe_1") }
let(:groupe_instructeur_1) { create(:groupe_instructeur, procedure: procedure, label: "groupe_1", contact_information: create(:contact_information)) }
let(:instructeur_1) { create(:instructeur) }
let(:instructeur_2) { create(:instructeur) }
let!(:assign_to_1) { create(:assign_to, procedure: procedure, groupe_instructeur: groupe_instructeur_1, instructeur: instructeur_1) }
@ -594,6 +594,11 @@ describe Procedure do
expect { subject }.not_to raise_error
end
it 'should clone groupe instructeur services' do
expect(procedure.groupe_instructeurs.last.contact_information).not_to eq nil
expect(subject.groupe_instructeurs.last.contact_information).not_to eq nil
end
end
it 'should reset duree_conservation_etendue_par_ds' do
@ -707,6 +712,13 @@ describe Procedure do
expect(subject.service).to eq(nil)
end
context 'with groupe instructeur services' do
it 'should not clone groupe instructeur services' do
expect(procedure.groupe_instructeurs.last.contact_information).not_to eq nil
expect(subject.groupe_instructeurs.last.contact_information).to eq nil
end
end
it 'should discard old pj information' do
subject.draft_revision.types_de_champ_public.each do |stc|
expect(stc.old_pj).to be_nil