diff --git a/app/controllers/new_administrateur/jeton_particulier_controller.rb b/app/controllers/new_administrateur/jeton_particulier_controller.rb index 4f0938f8b..bc3e3fb3e 100644 --- a/app/controllers/new_administrateur/jeton_particulier_controller.rb +++ b/app/controllers/new_administrateur/jeton_particulier_controller.rb @@ -18,8 +18,7 @@ module NewAdministrateur flash.now.alert = t('.no_scopes_token') render :show else - @procedure.api_particulier_scopes = scopes - @procedure.save! + @procedure.update!(api_particulier_scopes: scopes, api_particulier_sources: {}) redirect_to admin_procedure_api_particulier_sources_path(procedure_id: @procedure.id), notice: t('.token_ok') diff --git a/spec/controllers/new_administrateur/jeton_particulier_controller_spec.rb b/spec/controllers/new_administrateur/jeton_particulier_controller_spec.rb index f7c8eb288..9a7a548cf 100644 --- a/spec/controllers/new_administrateur/jeton_particulier_controller_spec.rb +++ b/spec/controllers/new_administrateur/jeton_particulier_controller_spec.rb @@ -40,12 +40,14 @@ describe NewAdministrateur::JetonParticulierController, type: :controller do context "and the api response is a success" do let(:cassette) { "api_particulier/success/introspect" } + let(:procedure) { create(:procedure, administrateur: admin, api_particulier_sources: { cnaf: { allocataires: ['noms_prenoms'] } }) } it 'saves the jeton' do expect(flash.alert).to be_nil expect(flash.notice).to eq("Le jeton a bien été mis à jour") expect(procedure.reload.api_particulier_token).to eql(token) expect(procedure.reload.api_particulier_scopes).to contain_exactly("dgfip_avis_imposition", "dgfip_adresse", "cnaf_allocataires", "cnaf_enfants", "cnaf_adresse", "cnaf_quotient_familial", "mesri_statut_etudiant") + expect(procedure.reload.api_particulier_sources).to be_empty end end