From 9b4ce1517ce5495adfb5ca2431623a417ee692d0 Mon Sep 17 00:00:00 2001 From: Frederic Merizen Date: Wed, 17 Jan 2018 16:54:30 +0100 Subject: [PATCH] Use lambda instead of send for etablissement tag --- app/models/concerns/tags_substitution_concern.rb | 12 ++++-------- .../models/concern/tags_substitution_concern_spec.rb | 10 ++-------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/app/models/concerns/tags_substitution_concern.rb b/app/models/concerns/tags_substitution_concern.rb index 385fe951c..b6ce914d0 100644 --- a/app/models/concerns/tags_substitution_concern.rb +++ b/app/models/concerns/tags_substitution_concern.rb @@ -97,14 +97,11 @@ module TagsSubstitutionConcern description: '', target: :raison_sociale, available_for_states: Dossier::SOUMIS - } - ] - - ETABLISSEMENT_TAGS = [ + }, { libelle: 'adresse', description: '', - target: :inline_adresse, + lambda: -> (e) { e&.etablissement&.inline_adresse }, available_for_states: Dossier::SOUMIS } ] @@ -113,7 +110,7 @@ module TagsSubstitutionConcern if procedure.for_individual? identity_tags = INDIVIDUAL_TAGS else - identity_tags = ENTREPRISE_TAGS + ETABLISSEMENT_TAGS + identity_tags = ENTREPRISE_TAGS end filter_tags(identity_tags + dossier_tags + champ_public_tags + champ_private_tags) @@ -185,8 +182,7 @@ module TagsSubstitutionConcern tags_and_datas = [ [dossier_tags, dossier], [INDIVIDUAL_TAGS, dossier.individual], - [ENTREPRISE_TAGS, dossier.entreprise], - [ETABLISSEMENT_TAGS, dossier.entreprise&.etablissement] + [ENTREPRISE_TAGS, dossier.entreprise] ] tags_and_datas diff --git a/spec/models/concern/tags_substitution_concern_spec.rb b/spec/models/concern/tags_substitution_concern_spec.rb index 22188d0d6..906e20ee3 100644 --- a/spec/models/concern/tags_substitution_concern_spec.rb +++ b/spec/models/concern/tags_substitution_concern_spec.rb @@ -58,19 +58,13 @@ describe TagsSubstitutionConcern, type: :model do let(:template) do '--SIREN-- --numéro de TVA intracommunautaire-- --SIRET du siège social-- --raison sociale-- --adresse--' end + let(:etablissement) { create(:etablissement) } let(:expected_text) do - "#{entreprise.siren} #{entreprise.numero_tva_intracommunautaire} #{entreprise.siret_siege_social} #{entreprise.raison_sociale} --adresse--" + "#{entreprise.siren} #{entreprise.numero_tva_intracommunautaire} #{entreprise.siret_siege_social} #{entreprise.raison_sociale} #{etablissement.inline_adresse}" end it { is_expected.to eq(expected_text) } - - context 'and the entreprise has a etablissement with an adresse' do - let(:etablissement) { create(:etablissement, adresse: 'adresse') } - let(:template) { '--adresse--' } - - it { is_expected.to eq(etablissement.inline_adresse) } - end end end