From ebd68484df55089e829961fe3f94bbbe5f2278c2 Mon Sep 17 00:00:00 2001 From: simon lehericey Date: Mon, 28 Nov 2022 21:22:52 +0100 Subject: [PATCH 1/3] clean(flipper): remove unused groups --- config/initializers/flipper.rb | 7 ------- 1 file changed, 7 deletions(-) diff --git a/config/initializers/flipper.rb b/config/initializers/flipper.rb index f3d476c0d..e5be1ee63 100644 --- a/config/initializers/flipper.rb +++ b/config/initializers/flipper.rb @@ -1,10 +1,3 @@ -Flipper.register('Administrateurs') do |user| - user.administrateur_id.present? -end -Flipper.register('Instructeurs') do |user| - user.instructeur_id.present? -end - # This setup is primarily for first deployment, because consequently # we can add new features from the Web UI. However when the new DB is created # this will immediately migrate the default features to be controlled. From 905e3ab64e1ac4a5eb29f9cf0e4df499c7b96ded Mon Sep 17 00:00:00 2001 From: simon lehericey Date: Mon, 28 Nov 2022 22:09:37 +0100 Subject: [PATCH 2/3] clean(flipper): remove unused gates --- config/initializers/flipper.rb | 1 - .../20221128205201_clean_old_gates.rake | 22 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 lib/tasks/deployment/20221128205201_clean_old_gates.rake diff --git a/config/initializers/flipper.rb b/config/initializers/flipper.rb index e5be1ee63..4c3c5a280 100644 --- a/config/initializers/flipper.rb +++ b/config/initializers/flipper.rb @@ -17,7 +17,6 @@ features = [ :dossier_pdf_vide, :expert_not_allowed_to_invite, :hide_instructeur_email, - :procedure_revisions, :procedure_routage_api ] diff --git a/lib/tasks/deployment/20221128205201_clean_old_gates.rake b/lib/tasks/deployment/20221128205201_clean_old_gates.rake new file mode 100644 index 000000000..b03be56e4 --- /dev/null +++ b/lib/tasks/deployment/20221128205201_clean_old_gates.rake @@ -0,0 +1,22 @@ +namespace :after_party do + desc 'Deployment task: clean_old_gates' + task clean_old_gates: :environment do + puts "Running deploy task 'clean_old_gates'" + + [ + 'procedure_revisions', + 'instructeur_bypass_email_login_token', + 'procedure_conditional', + 'admin_affect_experts_to_avis' + ].each do |key| + Flipper::Adapters::ActiveRecord::Gate.where(feature_key: key).destroy_all + end + + # Put your task implementation HERE. + + # Update task as completed. If you remove the line below, the task will + # run with every deploy (or every time you call after_party:run). + AfterParty::TaskRecord + .create version: AfterParty::TaskRecorder.new(__FILE__).timestamp + end +end From 8771205679ea466f4de1083eb0f784e7a3841e44 Mon Sep 17 00:00:00 2001 From: simon lehericey Date: Mon, 28 Nov 2022 22:13:36 +0100 Subject: [PATCH 3/3] clean(flipper): remove unused expert_not_allowed_to_invite --- app/controllers/experts/avis_controller.rb | 15 +++++--------- app/views/experts/avis/instruction.html.haml | 2 +- .../instructeurs/avis/instruction.html.haml | 2 +- config/initializers/flipper.rb | 1 - .../experts/avis_controller_spec.rb | 20 ------------------- .../avis/instruction.html.haml_spec.rb | 8 -------- 6 files changed, 7 insertions(+), 41 deletions(-) diff --git a/app/controllers/experts/avis_controller.rb b/app/controllers/experts/avis_controller.rb index 2e964badd..4971fc676 100644 --- a/app/controllers/experts/avis_controller.rb +++ b/app/controllers/experts/avis_controller.rb @@ -58,18 +58,13 @@ module Experts def create_avis @procedure = Procedure.find(params[:procedure_id]) - if !@procedure.feature_enabled?(:expert_not_allowed_to_invite) - @new_avis = create_avis_from_params(avis.dossier, current_expert, avis.confidentiel) + @new_avis = create_avis_from_params(avis.dossier, current_expert, avis.confidentiel) - if @new_avis.nil? - redirect_to instruction_expert_avis_path(avis.procedure, avis) - else - set_avis_and_dossier - render :instruction - end - else - flash.alert = "Cette démarche ne vous permet pas de demander un avis externe" + if @new_avis.nil? redirect_to instruction_expert_avis_path(avis.procedure, avis) + else + set_avis_and_dossier + render :instruction end end diff --git a/app/views/experts/avis/instruction.html.haml b/app/views/experts/avis/instruction.html.haml index b1604da53..914587395 100644 --- a/app/views/experts/avis/instruction.html.haml +++ b/app/views/experts/avis/instruction.html.haml @@ -31,7 +31,7 @@ .send-wrapper = f.submit 'Envoyer votre avis', class: 'fr-btn' - - if !@dossier.termine? && !@avis.procedure.feature_enabled?(:expert_not_allowed_to_invite) + - if !@dossier.termine? = render partial: "experts/shared/avis/form", locals: { url: avis_expert_avis_path(@avis.procedure, @avis), linked_dossiers: @dossier.linked_dossiers_for(current_expert), must_be_confidentiel: @avis.confidentiel?, avis: @new_avis } - if @dossier.avis_for_expert(current_expert).present? diff --git a/app/views/instructeurs/avis/instruction.html.haml b/app/views/instructeurs/avis/instruction.html.haml index a48ecb92e..fb9c18335 100644 --- a/app/views/instructeurs/avis/instruction.html.haml +++ b/app/views/instructeurs/avis/instruction.html.haml @@ -31,7 +31,7 @@ .send-wrapper = f.submit 'Envoyer votre avis', class: 'fr-btn' - - if !@dossier.termine? && !@avis.procedure.feature_enabled?(:expert_not_allowed_to_invite) + - if !@dossier.termine? = render partial: "instructeurs/shared/avis/form", locals: { url: avis_instructeur_avis_path(@avis.procedure, @avis), linked_dossiers: @dossier.linked_dossiers_for(current_instructeur), must_be_confidentiel: @avis.confidentiel?, avis: @new_avis } - if @dossier.avis_for(current_instructeur).present? diff --git a/config/initializers/flipper.rb b/config/initializers/flipper.rb index 4c3c5a280..0d7e3fc19 100644 --- a/config/initializers/flipper.rb +++ b/config/initializers/flipper.rb @@ -15,7 +15,6 @@ features = [ :administrateur_web_hook, :api_particulier, :dossier_pdf_vide, - :expert_not_allowed_to_invite, :hide_instructeur_email, :procedure_routage_api ] diff --git a/spec/controllers/experts/avis_controller_spec.rb b/spec/controllers/experts/avis_controller_spec.rb index 4502f3ccb..0f66094a2 100644 --- a/spec/controllers/experts/avis_controller_spec.rb +++ b/spec/controllers/experts/avis_controller_spec.rb @@ -326,26 +326,6 @@ describe Experts::AvisController, type: :controller do end end - describe '#expert_cannot_invite_another_expert' do - let!(:previous_avis) { create(:avis, dossier: dossier, claimant: claimant, experts_procedure: experts_procedure, confidentiel: previous_avis_confidentiel) } - let(:previous_avis_confidentiel) { false } - let(:asked_confidentiel) { false } - let(:intro) { 'introduction' } - let(:emails) { "[\"toto@totomail.com\"]" } - let(:invite_linked_dossiers) { nil } - - before do - Flipper.enable_actor(:expert_not_allowed_to_invite, procedure) - post :create_avis, params: { id: previous_avis.id, procedure_id: procedure.id, avis: { emails: emails, introduction: intro, confidentiel: asked_confidentiel, invite_linked_dossiers: invite_linked_dossiers, introduction_file: @introduction_file } } - end - - context 'when the expert cannot invite another expert' do - let(:asked_confidentiel) { false } - it { expect(flash.alert).to eq("Cette démarche ne vous permet pas de demander un avis externe") } - it { expect(response).to redirect_to(instruction_expert_avis_path(procedure, previous_avis)) } - end - end - describe '#create_avis' do let(:previous_avis_confidentiel) { false } let(:previous_revoked_at) { nil } diff --git a/spec/views/experts/avis/instruction.html.haml_spec.rb b/spec/views/experts/avis/instruction.html.haml_spec.rb index 5ce2a54ef..b360f9e82 100644 --- a/spec/views/experts/avis/instruction.html.haml_spec.rb +++ b/spec/views/experts/avis/instruction.html.haml_spec.rb @@ -23,12 +23,4 @@ describe 'experts/avis/instruction.html.haml', type: :view do let(:confidentiel) { false } it { is_expected.to have_text("Cet avis est partagé avec les autres experts") } end - - context 'when an expert is not allowed to invite another expert' do - let(:confidentiel) { false } - before do - Flipper.enable(:expert_not_allowed_to_invite, avis.procedure) - end - it { is_expected.to have_no_text("Inviter des personnes à donner leur avis") } - end end