fix(fix_champs_commune_having_value_but_not_external_id): only asks for update for dossier en construction

This commit is contained in:
mfo 2024-09-20 11:54:42 +02:00
parent ada5ceeeec
commit 3b3c845b2e
No known key found for this signature in database
GPG key ID: 7CE3E1F5B794A8EC
3 changed files with 11 additions and 9 deletions

View file

@ -26,13 +26,15 @@ module Maintenance
champ.code = formated_results.first[:value]
champ.save!
else # otherwise, we can't find the expected departement
champ.code_departement = nil
champ.code_postal = nil
champ.external_id = nil
champ.value = nil
champ.save(validate: false)
if champ.dossier.en_construction?
champ.code_departement = nil
champ.code_postal = nil
champ.external_id = nil
champ.value = nil
champ.save(validate: false)
ask_user_correction(champ)
ask_user_correction(champ)
end
end
end
end

View file

@ -30,7 +30,7 @@ module Maintenance
end
context 'en_instruction (go back to en_construction!), send comment' do
let(:state) { [:en_instruction, :en_construction].sample }
let(:state) { :en_construction }
it 'flags as pending correction' do
expect { subject }.to change { champ.reload.value }.from('Marseille').to(nil)

View file

@ -6,7 +6,7 @@ module Maintenance
RSpec.describe ResolvePendingCorrectionForDossierWithInvalidCommuneExternalIdTask do
describe "#process" do
subject(:process) { described_class.process }
let(:instructeur) { create(:instructeur, email: ENV.fetch('DEFAULT_INSTRUCTEUR_EMAIL') { CONTACT_EMAIL }) }
let!(:instructeur) { create(:instructeur, email: ENV.fetch('DEFAULT_INSTRUCTEUR_EMAIL') { CONTACT_EMAIL }) }
let(:commentaire) { create(:commentaire, instructeur:) }
let(:dossier_correction) { create(:dossier_correction, commentaire:, dossier:, resolved_at: nil) }
@ -22,7 +22,7 @@ module Maintenance
context 'when dossier didnt transitioned' do
let(:dossier) { create(:dossier, :en_construction) }
before { create(:traitement, dossier:) }
it 'noop' do
expect { subject }.not_to change { dossier.reload.state }
end