fix(dossier): do not try to rebase if procedure is not published
This commit is contained in:
parent
fc31ef6da3
commit
2971100081
2 changed files with 13 additions and 2 deletions
|
@ -14,12 +14,12 @@ module DossierRebaseConcern
|
|||
end
|
||||
|
||||
def can_rebase?
|
||||
revision != procedure.published_revision &&
|
||||
procedure.published_revision.present? && revision != procedure.published_revision &&
|
||||
(brouillon? || accepted_en_construction_changes? || accepted_en_instruction_changes?)
|
||||
end
|
||||
|
||||
def pending_changes
|
||||
revision.compare(procedure.published_revision)
|
||||
procedure.published_revision.present? ? revision.compare(procedure.published_revision) : []
|
||||
end
|
||||
|
||||
def can_rebase_mandatory_change?(stable_id)
|
||||
|
|
|
@ -6,6 +6,17 @@ describe DossierRebaseConcern do
|
|||
let(:private_type_de_champ) { procedure.active_revision.types_de_champ_private.first }
|
||||
let(:mandatory_type_de_champ) { procedure.active_revision.types_de_champ_public.find(&:mandatory?) }
|
||||
|
||||
context 'on unpublished procedure' do
|
||||
context 'en_construction' do
|
||||
let(:dossier) { create(:dossier, :en_construction, procedure: procedure) }
|
||||
|
||||
it 'should be false' do
|
||||
expect(dossier.pending_changes).to be_empty
|
||||
expect(dossier.can_rebase?).to be_falsey
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'en_construction' do
|
||||
let(:dossier) { create(:dossier, :en_construction, procedure: procedure) }
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue