Clone mail_templates where clone procedure
This commit is contained in:
parent
7a81b18d66
commit
b56883db16
2 changed files with 11 additions and 1 deletions
|
@ -87,7 +87,7 @@ class Procedure < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
|
|
||||||
def clone
|
def clone
|
||||||
procedure = self.deep_clone(include: [:types_de_piece_justificative, :types_de_champ, :module_api_carto])
|
procedure = self.deep_clone(include: [:types_de_piece_justificative, :types_de_champ, :module_api_carto, :mail_templates])
|
||||||
procedure.archived = false
|
procedure.archived = false
|
||||||
procedure.published = false
|
procedure.published = false
|
||||||
return procedure if procedure.save
|
return procedure if procedure.save
|
||||||
|
|
|
@ -164,6 +164,11 @@ describe Procedure do
|
||||||
let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) }
|
let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) }
|
||||||
let!(:piece_justificative_0) { create(:type_de_piece_justificative, procedure: procedure, order_place: 0) }
|
let!(:piece_justificative_0) { create(:type_de_piece_justificative, procedure: procedure, order_place: 0) }
|
||||||
let!(:piece_justificative_1) { create(:type_de_piece_justificative, procedure: procedure, order_place: 1) }
|
let!(:piece_justificative_1) { create(:type_de_piece_justificative, procedure: procedure, order_place: 1) }
|
||||||
|
|
||||||
|
before do
|
||||||
|
procedure.mail_received.object = "Je vais être cloné"
|
||||||
|
end
|
||||||
|
|
||||||
subject { procedure.clone }
|
subject { procedure.clone }
|
||||||
|
|
||||||
it 'should duplicate specific objects with different id' do
|
it 'should duplicate specific objects with different id' do
|
||||||
|
@ -171,6 +176,7 @@ describe Procedure do
|
||||||
expect(subject).to have_same_attributes_as(procedure)
|
expect(subject).to have_same_attributes_as(procedure)
|
||||||
expect(subject.module_api_carto).to have_same_attributes_as(procedure.module_api_carto)
|
expect(subject.module_api_carto).to have_same_attributes_as(procedure.module_api_carto)
|
||||||
|
|
||||||
|
|
||||||
subject.types_de_champ.zip(procedure.types_de_champ).each do |stc, ptc|
|
subject.types_de_champ.zip(procedure.types_de_champ).each do |stc, ptc|
|
||||||
expect(stc).to have_same_attributes_as(ptc)
|
expect(stc).to have_same_attributes_as(ptc)
|
||||||
end
|
end
|
||||||
|
@ -178,6 +184,10 @@ describe Procedure do
|
||||||
subject.types_de_piece_justificative.zip(procedure.types_de_piece_justificative).each do |stc, ptc|
|
subject.types_de_piece_justificative.zip(procedure.types_de_piece_justificative).each do |stc, ptc|
|
||||||
expect(stc).to have_same_attributes_as(ptc)
|
expect(stc).to have_same_attributes_as(ptc)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
subject.mail_templates.zip(procedure.mail_templates).each do |stc, ptc|
|
||||||
|
expect(stc).to have_same_attributes_as(ptc)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'should not duplicate specific related objects' do
|
it 'should not duplicate specific related objects' do
|
||||||
|
|
Loading…
Reference in a new issue