fix(rebase): fix repetition champ rebase
This commit is contained in:
parent
a66257884d
commit
1393b7b07b
2 changed files with 6 additions and 3 deletions
|
@ -64,7 +64,7 @@ module DossierRebaseConcern
|
||||||
def add_new_champs_for_revision(published_type_de_champ)
|
def add_new_champs_for_revision(published_type_de_champ)
|
||||||
if published_type_de_champ.parent
|
if published_type_de_champ.parent
|
||||||
find_champs_by_stable_id(published_type_de_champ.parent.stable_id).each do |champ_repetition|
|
find_champs_by_stable_id(published_type_de_champ.parent.stable_id).each do |champ_repetition|
|
||||||
champ_repetition.rows.size.times do |row|
|
champ_repetition.champs.map(&:row).uniq.each do |row|
|
||||||
champ = published_type_de_champ.champ.build(row: row)
|
champ = published_type_de_champ.champ.build(row: row)
|
||||||
champ_repetition.champs << champ
|
champ_repetition.champs << champ
|
||||||
end
|
end
|
||||||
|
|
|
@ -1497,6 +1497,7 @@ describe Dossier do
|
||||||
|
|
||||||
datetime_champ.update(value: Date.today.to_s)
|
datetime_champ.update(value: Date.today.to_s)
|
||||||
text_champ.update(value: 'bonjour')
|
text_champ.update(value: 'bonjour')
|
||||||
|
repetition_champ.add_row(repetition_champ.champs.last.row + 2)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "updates the brouillon champs with the latest revision changes" do
|
it "updates the brouillon champs with the latest revision changes" do
|
||||||
|
@ -1505,8 +1506,9 @@ describe Dossier do
|
||||||
|
|
||||||
expect(dossier.revision).to eq(procedure.published_revision)
|
expect(dossier.revision).to eq(procedure.published_revision)
|
||||||
expect(dossier.champs.size).to eq(4)
|
expect(dossier.champs.size).to eq(4)
|
||||||
expect(repetition_champ.rows.size).to eq(1)
|
expect(repetition_champ.rows.size).to eq(2)
|
||||||
expect(repetition_champ.rows[0].size).to eq(1)
|
expect(repetition_champ.rows[0].size).to eq(1)
|
||||||
|
expect(repetition_champ.rows[1].size).to eq(1)
|
||||||
|
|
||||||
procedure.publish_revision!
|
procedure.publish_revision!
|
||||||
perform_enqueued_jobs
|
perform_enqueued_jobs
|
||||||
|
@ -1520,8 +1522,9 @@ describe Dossier do
|
||||||
expect(rebased_text_champ.type_de_champ_id).not_to eq(text_champ.type_de_champ_id)
|
expect(rebased_text_champ.type_de_champ_id).not_to eq(text_champ.type_de_champ_id)
|
||||||
expect(rebased_datetime_champ.type_champ).to eq(TypeDeChamp.type_champs.fetch(:date))
|
expect(rebased_datetime_champ.type_champ).to eq(TypeDeChamp.type_champs.fetch(:date))
|
||||||
expect(rebased_datetime_champ.value).to be_nil
|
expect(rebased_datetime_champ.value).to be_nil
|
||||||
expect(rebased_repetition_champ.rows.size).to eq(1)
|
expect(rebased_repetition_champ.rows.size).to eq(2)
|
||||||
expect(rebased_repetition_champ.rows[0].size).to eq(2)
|
expect(rebased_repetition_champ.rows[0].size).to eq(2)
|
||||||
|
expect(rebased_repetition_champ.rows[1].size).to eq(2)
|
||||||
expect(rebased_text_champ.rebased_at).not_to be_nil
|
expect(rebased_text_champ.rebased_at).not_to be_nil
|
||||||
expect(rebased_datetime_champ.rebased_at).not_to be_nil
|
expect(rebased_datetime_champ.rebased_at).not_to be_nil
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue