From 31d638ae2ad6d48d2ac27c1fc5aa2eedf99c5268 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Tue, 13 Feb 2018 15:38:26 +0100 Subject: [PATCH 1/2] Remove TypeDeChampPublic/TypeDeChampPrivate STI --- app/controllers/root_controller.rb | 2 +- app/facades/admin_types_de_champ_facades.rb | 2 +- app/models/procedure.rb | 4 +- app/models/type_de_champ.rb | 7 ++- app/models/type_de_champ_private.rb | 2 - app/models/type_de_champ_public.rb | 2 - app/services/types_de_champ_service.rb | 12 ++--- .../admin/types_de_champ_controller_spec.rb | 3 +- .../types_de_champ_private_controller_spec.rb | 6 +-- spec/factories/type_de_champ_private.rb | 3 +- spec/factories/type_de_champ_public.rb | 3 +- spec/models/type_de_champ_private_spec.rb | 9 ++-- spec/models/type_de_champ_public_spec.rb | 7 --- spec/services/types_de_champ_service_spec.rb | 53 ++++++++++--------- 14 files changed, 58 insertions(+), 57 deletions(-) delete mode 100644 app/models/type_de_champ_private.rb delete mode 100644 app/models/type_de_champ_public.rb delete mode 100644 spec/models/type_de_champ_public_spec.rb diff --git a/app/controllers/root_controller.rb b/app/controllers/root_controller.rb index febfb25d1..3d16871fa 100644 --- a/app/controllers/root_controller.rb +++ b/app/controllers/root_controller.rb @@ -19,7 +19,7 @@ class RootController < ApplicationController description = 'a not so long description' all_champs = TypeDeChamp.type_champs - .map { |name, _| TypeDeChamp.new(type_champ: name, libelle: name, description: description, mandatory: true) } + .map { |name, _| TypeDeChamp.new(type_champ: name, private: false, libelle: name, description: description, mandatory: true) } .map.with_index { |type_de_champ, i| type_de_champ.champ.build(id: i) } all_champs diff --git a/app/facades/admin_types_de_champ_facades.rb b/app/facades/admin_types_de_champ_facades.rb index a8f7fe578..eefe7e57c 100644 --- a/app/facades/admin_types_de_champ_facades.rb +++ b/app/facades/admin_types_de_champ_facades.rb @@ -23,7 +23,7 @@ class AdminTypesDeChampFacades end def new_type_de_champ - @private ? TypeDeChampPrivate.new.decorate : TypeDeChampPublic.new.decorate + TypeDeChamp.new(private: @private).decorate end def fields_for_var diff --git a/app/models/procedure.rb b/app/models/procedure.rb index 7cf0c3d67..5441fbc3d 100644 --- a/app/models/procedure.rb +++ b/app/models/procedure.rb @@ -1,7 +1,7 @@ class Procedure < ActiveRecord::Base has_many :types_de_piece_justificative, -> { order "order_place ASC" }, dependent: :destroy - has_many :types_de_champ, class_name: 'TypeDeChampPublic', dependent: :destroy - has_many :types_de_champ_private, dependent: :destroy + has_many :types_de_champ, -> { public_only }, dependent: :destroy + has_many :types_de_champ_private, -> { private_only }, class_name: 'TypeDeChamp', dependent: :destroy has_many :dossiers has_one :procedure_path, dependent: :destroy diff --git a/app/models/type_de_champ.rb b/app/models/type_de_champ.rb index 6df25d6a0..f6bf5a36d 100644 --- a/app/models/type_de_champ.rb +++ b/app/models/type_de_champ.rb @@ -1,4 +1,6 @@ class TypeDeChamp < ActiveRecord::Base + self.inheritance_column = :_type_disabled + enum type_champs: { text: 'text', textarea: 'textarea', @@ -24,6 +26,9 @@ class TypeDeChamp < ActiveRecord::Base belongs_to :procedure + scope :public_only, -> { where.not(type: 'TypeDeChampPrivate').or(where(private: [false, nil])) } + scope :private_only, -> { where(type: 'TypeDeChampPrivate').or(where(private: true)) } + has_many :champ, inverse_of: :type_de_champ, dependent: :destroy do def build(params = {}) super(params.merge(proxy_association.owner.params_for_champ)) @@ -65,7 +70,7 @@ class TypeDeChamp < ActiveRecord::Base end def private? - type == 'TypeDeChampPrivate' + super || type == 'TypeDeChampPrivate' end def public? diff --git a/app/models/type_de_champ_private.rb b/app/models/type_de_champ_private.rb deleted file mode 100644 index ba6e89a82..000000000 --- a/app/models/type_de_champ_private.rb +++ /dev/null @@ -1,2 +0,0 @@ -class TypeDeChampPrivate < TypeDeChamp -end diff --git a/app/models/type_de_champ_public.rb b/app/models/type_de_champ_public.rb deleted file mode 100644 index 3be990e13..000000000 --- a/app/models/type_de_champ_public.rb +++ /dev/null @@ -1,2 +0,0 @@ -class TypeDeChampPublic < TypeDeChamp -end diff --git a/app/services/types_de_champ_service.rb b/app/services/types_de_champ_service.rb index 7f8cfe1e9..d4eb53a9b 100644 --- a/app/services/types_de_champ_service.rb +++ b/app/services/types_de_champ_service.rb @@ -13,17 +13,17 @@ class TypesDeChampService :type_champ, :id, :mandatory, - :type, drop_down_list_attributes: [:value, :id] ]) - parameters[attributes].each do |param_first, param_second| - if param_second[:libelle].empty? - parameters[attributes].delete(param_first.to_s) + parameters[attributes].each do |index, param| + param[:private] = private + if param[:libelle].empty? + parameters[attributes].delete(index.to_s) end - if param_second['drop_down_list_attributes'] && param_second['drop_down_list_attributes']['value'] - param_second['drop_down_list_attributes']['value'] = self.clean_value (param_second['drop_down_list_attributes']['value']) + if param['drop_down_list_attributes'] && param['drop_down_list_attributes']['value'] + param['drop_down_list_attributes']['value'] = self.clean_value (param['drop_down_list_attributes']['value']) end end diff --git a/spec/controllers/admin/types_de_champ_controller_spec.rb b/spec/controllers/admin/types_de_champ_controller_spec.rb index d3b6fc8fa..a1520d05e 100644 --- a/spec/controllers/admin/types_de_champ_controller_spec.rb +++ b/spec/controllers/admin/types_de_champ_controller_spec.rb @@ -57,8 +57,7 @@ describe Admin::TypesDeChampController, type: :controller do description: '', order_place: '1', id: '', - mandatory: false, - type: 'TypeDeChampPublic' + mandatory: false } } } diff --git a/spec/controllers/admin/types_de_champ_private_controller_spec.rb b/spec/controllers/admin/types_de_champ_private_controller_spec.rb index 61ab44966..07d388183 100644 --- a/spec/controllers/admin/types_de_champ_private_controller_spec.rb +++ b/spec/controllers/admin/types_de_champ_private_controller_spec.rb @@ -49,8 +49,7 @@ describe Admin::TypesDeChampPrivateController, type: :controller do description: description, order_place: order_place, id: types_de_champ_id, - mandatory: mandatory, - type: 'TypeDeChampPrivate' + mandatory: mandatory }, '1' => { libelle: '', @@ -58,8 +57,7 @@ describe Admin::TypesDeChampPrivateController, type: :controller do description: '', order_place: '1', id: '', - mandatory: false, - type: 'TypeDeChampPrivate' + mandatory: false } } } diff --git a/spec/factories/type_de_champ_private.rb b/spec/factories/type_de_champ_private.rb index d804dd42b..11a434765 100644 --- a/spec/factories/type_de_champ_private.rb +++ b/spec/factories/type_de_champ_private.rb @@ -1,5 +1,6 @@ FactoryBot.define do - factory :type_de_champ_private do + factory :type_de_champ_private, class: 'TypeDeChamp' do + private true sequence(:libelle) { |n| "Libelle champ privé #{n}" } sequence(:description) { |n| "description du champ privé #{n}" } type_champ 'text' diff --git a/spec/factories/type_de_champ_public.rb b/spec/factories/type_de_champ_public.rb index 7f63092cf..9654959e1 100644 --- a/spec/factories/type_de_champ_public.rb +++ b/spec/factories/type_de_champ_public.rb @@ -1,5 +1,6 @@ FactoryBot.define do - factory :type_de_champ_public do + factory :type_de_champ_public, class: 'TypeDeChamp' do + private false sequence(:libelle) { |n| "Libelle du champ #{n}" } sequence(:description) { |n| "description du champ #{n}" } type_champ 'text' diff --git a/spec/models/type_de_champ_private_spec.rb b/spec/models/type_de_champ_private_spec.rb index 6f0b1ce8a..19b8a631b 100644 --- a/spec/models/type_de_champ_private_spec.rb +++ b/spec/models/type_de_champ_private_spec.rb @@ -1,7 +1,10 @@ require 'spec_helper' -describe TypeDeChampPrivate do - require 'models/type_de_champ_shared_example' +describe TypeDeChamp do + describe '#private?' do + let(:type_de_champ) { build(:type_de_champ_private) } - it_should_behave_like "type_de_champ_spec" + it { expect(type_de_champ.private?).to be_truthy } + it { expect(type_de_champ.public?).to be_falsey } + end end diff --git a/spec/models/type_de_champ_public_spec.rb b/spec/models/type_de_champ_public_spec.rb deleted file mode 100644 index fc855566f..000000000 --- a/spec/models/type_de_champ_public_spec.rb +++ /dev/null @@ -1,7 +0,0 @@ -require 'spec_helper' - -describe TypeDeChampPublic do - require 'models/type_de_champ_shared_example' - - it_should_behave_like "type_de_champ_spec" -end diff --git a/spec/services/types_de_champ_service_spec.rb b/spec/services/types_de_champ_service_spec.rb index dbe847cc0..f08072542 100644 --- a/spec/services/types_de_champ_service_spec.rb +++ b/spec/services/types_de_champ_service_spec.rb @@ -9,7 +9,7 @@ describe TypesDeChampService do describe 'the drop down list attributes' do let(:types_de_champ_attributes) do { - "0" => { + "0": { libelle: 'top', drop_down_list_attributes: { value: "un\r\n deux\r\n -- commentaire --\r\n trois", @@ -28,29 +28,34 @@ describe TypesDeChampService do describe 'reorder the fields' do let(:types_de_champ_attributes) do { - '0' => { 'libelle' => 'a', 'order_place' => '0', 'custom_order_place' => '1' }, - '1' => { 'libelle' => 'b', 'order_place' => '1', 'custom_order_place' => '2' } + '0': { 'libelle': 'a', 'order_place': '0', 'custom_order_place': '1' }, + '1': { 'libelle': 'b', 'order_place': '1', 'custom_order_place': '2' } } end subject { result['types_de_champ_attributes'].to_unsafe_hash } - it { is_expected.to match({ "0" => { 'libelle' => 'a', 'order_place' => '0' }, "1" => { 'libelle' => 'b', 'order_place' => '1' } }) } + it do + is_expected.to match({ + '0': { 'libelle': 'a', 'order_place': '0', 'private': false }, + '1': { 'libelle': 'b', 'order_place': '1', 'private': false } + }) + end context 'when the user specifies a position on one element' do let(:types_de_champ_attributes) do { - '0' => { 'libelle' => 'a', 'order_place' => '1', 'custom_order_place' => '1' }, - '1' => { 'libelle' => 'b', 'order_place' => '10', 'custom_order_place' => '10' }, - '2' => { 'libelle' => 'c', 'order_place' => '11', 'custom_order_place' => '2' } + '0': { 'libelle': 'a', 'order_place': '1', 'custom_order_place': '1' }, + '1': { 'libelle': 'b', 'order_place': '10', 'custom_order_place': '10' }, + '2': { 'libelle': 'c', 'order_place': '11', 'custom_order_place': '2' } } end it do is_expected.to match({ - '0' => { 'libelle' => 'a', 'order_place' => '0' }, - '1' => { 'libelle' => 'c', 'order_place' => '1' }, - '2' => { 'libelle' => 'b', 'order_place' => '2' } + '0': { 'libelle': 'a', 'order_place': '0', 'private': false }, + '1': { 'libelle': 'c', 'order_place': '1', 'private': false }, + '2': { 'libelle': 'b', 'order_place': '2', 'private': false } }) end end @@ -58,17 +63,17 @@ describe TypesDeChampService do context 'when the user puts a champ down' do let(:types_de_champ_attributes) do { - '0' => { 'libelle' => 'a', 'order_place' => '0', 'custom_order_place' => '2' }, - '1' => { 'libelle' => 'b', 'order_place' => '1', 'custom_order_place' => '2' }, - '2' => { 'libelle' => 'c', 'order_place' => '2', 'custom_order_place' => '3' } + '0': { 'libelle': 'a', 'order_place': '0', 'custom_order_place': '2' }, + '1': { 'libelle': 'b', 'order_place': '1', 'custom_order_place': '2' }, + '2': { 'libelle': 'c', 'order_place': '2', 'custom_order_place': '3' } } end it do is_expected.to match({ - '0' => { 'libelle' => 'b', 'order_place' => '0' }, - '1' => { 'libelle' => 'a', 'order_place' => '1' }, - '2' => { 'libelle' => 'c', 'order_place' => '2' } + '0': { 'libelle': 'b', 'order_place': '0', 'private': false }, + '1': { 'libelle': 'a', 'order_place': '1', 'private': false }, + '2': { 'libelle': 'c', 'order_place': '2', 'private': false } }) end end @@ -76,19 +81,19 @@ describe TypesDeChampService do context 'when the user uses not a number' do let(:types_de_champ_attributes) do { - '0' => { 'libelle' => 'a', 'order_place' => '0', 'custom_order_place' => '1' }, - '1' => { 'libelle' => 'b', 'order_place' => '1', 'custom_order_place' => '2' }, - '2' => { 'libelle' => 'c', 'order_place' => '2', 'custom_order_place' => '' }, - '3' => { 'libelle' => 'd', 'order_place' => '3', 'custom_order_place' => 'a' } + '0': { 'libelle': 'a', 'order_place': '0', 'custom_order_place': '1' }, + '1': { 'libelle': 'b', 'order_place': '1', 'custom_order_place': '2' }, + '2': { 'libelle': 'c', 'order_place': '2', 'custom_order_place': '' }, + '3': { 'libelle': 'd', 'order_place': '3', 'custom_order_place': 'a' } } end it 'does not change the natural order' do is_expected.to match({ - '0' => { 'libelle' => 'a', 'order_place' => '0' }, - '1' => { 'libelle' => 'b', 'order_place' => '1' }, - '2' => { 'libelle' => 'c', 'order_place' => '2' }, - '3' => { 'libelle' => 'd', 'order_place' => '3' } + '0': { 'libelle': 'a', 'order_place': '0', 'private': false }, + '1': { 'libelle': 'b', 'order_place': '1', 'private': false }, + '2': { 'libelle': 'c', 'order_place': '2', 'private': false }, + '3': { 'libelle': 'd', 'order_place': '3', 'private': false } }) end end From 0c1d529b61c582e7bf1c5dea22eeff46afb50fa2 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Tue, 13 Feb 2018 17:00:19 +0100 Subject: [PATCH 2/2] Unify :type_de_champ public/private factories --- .../admin/types_de_champ_controller_spec.rb | 18 ++++++------ .../types_de_champ_private_controller_spec.rb | 18 ++++++------ .../dossiers_controller_spec.rb | 4 +-- spec/decorators/champ_decorator_spec.rb | 3 +- .../type_de_champ_decorator_spec.rb | 6 ++-- spec/factories/champ.rb | 10 +++---- spec/factories/procedure.rb | 12 ++++---- ...pe_de_champ_public.rb => type_de_champ.rb} | 8 +++++- spec/factories/type_de_champ_private.rb | 16 ----------- .../move_down_type_de_champ_private_spec.rb | 8 +++--- .../admin/move_down_type_de_champ_spec.rb | 8 +++--- .../move_up_type_de_champ_private_spec.rb | 8 +++--- .../admin/move_up_type_de_champ_spec.rb | 8 +++--- .../users/flux_de_commentaires_spec.rb | 2 +- spec/jobs/find_dubious_procedures_job_spec.rb | 6 ++-- spec/models/attestation_template_spec.rb | 4 +-- spec/models/champ_private_spec.rb | 2 +- spec/models/champ_shared_example.rb | 4 +-- spec/models/champ_spec.rb | 8 +++--- .../concern/tags_substitution_concern_spec.rb | 22 +++++++-------- spec/models/dossier_spec.rb | 12 ++++---- spec/models/drop_down_list_spec.rb | 4 +-- spec/models/procedure_spec.rb | 28 +++++++++---------- spec/models/type_de_champ_private_spec.rb | 2 +- spec/services/champs_service_spec.rb | 6 ++-- .../types_de_champ/show.html.haml_spec.rb | 10 +++---- .../show.html.haml_spec.rb | 10 +++---- .../champs/_date.html.haml_spec.rb | 2 +- .../champs/_dossier_link.html.haml_spec.rb | 2 +- .../champs/_engagement.html.haml_spec.rb | 2 +- .../_render_list_champs.html.haml_spec.rb | 4 +-- .../champs/_yes_no.html.haml_spec.rb | 2 +- 32 files changed, 125 insertions(+), 134 deletions(-) rename spec/factories/{type_de_champ_public.rb => type_de_champ.rb} (78%) delete mode 100644 spec/factories/type_de_champ_private.rb diff --git a/spec/controllers/admin/types_de_champ_controller_spec.rb b/spec/controllers/admin/types_de_champ_controller_spec.rb index a1520d05e..e14f11107 100644 --- a/spec/controllers/admin/types_de_champ_controller_spec.rb +++ b/spec/controllers/admin/types_de_champ_controller_spec.rb @@ -147,7 +147,7 @@ describe Admin::TypesDeChampController, type: :controller do end end context 'when procedure and type de champs are not linked' do - let(:type_de_champ) { create(:type_de_champ_public) } + let(:type_de_champ) { create(:type_de_champ) } let(:type_de_champ_id) { type_de_champ.id } it { expect(subject.status).to eq(404) } end @@ -162,20 +162,20 @@ describe Admin::TypesDeChampController, type: :controller do end context 'when procedure have only one type de champ' do let(:index) { 1 } - let!(:type_de_champ) { create(:type_de_champ_public, procedure: procedure) } + let!(:type_de_champ) { create(:type_de_champ, procedure: procedure) } it { expect(subject.status).to eq(400) } end context 'when procedure have tow type de champs' do context 'when index == 0' do let(:index) { 0 } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure) } - let!(:type_de_champ_2) { create(:type_de_champ_public, procedure: procedure) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure) } + let!(:type_de_champ_2) { create(:type_de_champ, procedure: procedure) } it { expect(subject.status).to eq(400) } end context 'when index > 0' do let(:index) { 1 } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } it { expect(subject.status).to eq(200) } it { expect(subject).to render_template('show') } @@ -200,12 +200,12 @@ describe Admin::TypesDeChampController, type: :controller do it { expect(subject.status).to eq(400) } end context 'when procedure have only one type de champ' do - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure) } it { expect(subject.status).to eq(400) } end context 'when procedure have 2 type de champ' do - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } context 'when index represent last type_de_champ' do let(:index) { 1 } it { expect(subject.status).to eq(400) } diff --git a/spec/controllers/admin/types_de_champ_private_controller_spec.rb b/spec/controllers/admin/types_de_champ_private_controller_spec.rb index 07d388183..d3a48202b 100644 --- a/spec/controllers/admin/types_de_champ_private_controller_spec.rb +++ b/spec/controllers/admin/types_de_champ_private_controller_spec.rb @@ -129,7 +129,7 @@ describe Admin::TypesDeChampPrivateController, type: :controller do end end context 'when procedure and type de champs are not linked' do - let(:type_de_champ) { create(:type_de_champ_public) } + let(:type_de_champ) { create(:type_de_champ) } let(:type_de_champ_id) { type_de_champ.id } it { expect(subject.status).to eq(404) } end @@ -144,20 +144,20 @@ describe Admin::TypesDeChampPrivateController, type: :controller do end context 'when procedure have only one type de champ' do let(:index) { 1 } - let!(:type_de_champ) { create(:type_de_champ_private, procedure: procedure) } + let!(:type_de_champ) { create(:type_de_champ, :private, procedure: procedure) } it { expect(subject.status).to eq(400) } end context 'when procedure have tow type de champs' do context 'when index == 0' do let(:index) { 0 } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure) } - let!(:type_de_champ_2) { create(:type_de_champ_private, procedure: procedure) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure) } + let!(:type_de_champ_2) { create(:type_de_champ, :private, procedure: procedure) } it { expect(subject.status).to eq(400) } end context 'when index > 0' do let(:index) { 1 } - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1) } it { expect(subject.status).to eq(200) } it { expect(subject).to render_template('show') } @@ -182,12 +182,12 @@ describe Admin::TypesDeChampPrivateController, type: :controller do it { expect(subject.status).to eq(400) } end context 'when procedure have only one type de champ' do - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure) } it { expect(subject.status).to eq(400) } end context 'when procedure have 2 type de champ' do - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1) } context 'when index represent last type_de_champ' do let(:index) { 1 } it { expect(subject.status).to eq(400) } diff --git a/spec/controllers/new_gestionnaire/dossiers_controller_spec.rb b/spec/controllers/new_gestionnaire/dossiers_controller_spec.rb index 5a08115b3..be6329132 100644 --- a/spec/controllers/new_gestionnaire/dossiers_controller_spec.rb +++ b/spec/controllers/new_gestionnaire/dossiers_controller_spec.rb @@ -355,11 +355,11 @@ describe NewGestionnaire::DossiersController, type: :controller do describe "#update_annotations" do let(:champ_multiple_drop_down_list) do - create(:type_de_champ_private, type_champ: 'multiple_drop_down_list', libelle: 'libelle').champ.create + create(:type_de_champ, :private, type_champ: 'multiple_drop_down_list', libelle: 'libelle').champ.create end let(:champ_datetime) do - create(:type_de_champ_private, type_champ: 'datetime', libelle: 'libelle').champ.create + create(:type_de_champ, :private, type_champ: 'datetime', libelle: 'libelle').champ.create end let(:dossier) do diff --git a/spec/decorators/champ_decorator_spec.rb b/spec/decorators/champ_decorator_spec.rb index c01beac14..101483406 100644 --- a/spec/decorators/champ_decorator_spec.rb +++ b/spec/decorators/champ_decorator_spec.rb @@ -1,7 +1,8 @@ require 'spec_helper' describe ChampDecorator do - let(:champ) { create :champ, type_de_champ: (create :type_de_champ_public, type_champ: type_champ) } + let(:type_de_champ) { create(:type_de_champ, type_champ: type_champ) } + let(:champ) { type_de_champ.champ.create } let(:decorator) { champ.decorate } describe 'value' do diff --git a/spec/decorators/type_de_champ_decorator_spec.rb b/spec/decorators/type_de_champ_decorator_spec.rb index 0a6ac784a..7a490aefc 100644 --- a/spec/decorators/type_de_champ_decorator_spec.rb +++ b/spec/decorators/type_de_champ_decorator_spec.rb @@ -4,9 +4,9 @@ describe TypeDeChampDecorator do let(:procedure) { create(:procedure) } let(:url) { 'http://localhost' } let(:params) { { url: url, index: index } } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } - let!(:type_de_champ_2) { create(:type_de_champ_public, procedure: procedure, order_place: 2) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } + let!(:type_de_champ_2) { create(:type_de_champ, procedure: procedure, order_place: 2) } describe '#button_up' do describe 'with first piece justificative' do diff --git a/spec/factories/champ.rb b/spec/factories/champ.rb index ee5917834..f6570f6f4 100644 --- a/spec/factories/champ.rb +++ b/spec/factories/champ.rb @@ -1,21 +1,21 @@ FactoryBot.define do factory :champ do - type_de_champ { FactoryBot.create(:type_de_champ_public) } + type_de_champ { FactoryBot.create(:type_de_champ) } trait :checkbox do - type_de_champ { FactoryBot.create(:type_de_champ_public, :checkbox) } + type_de_champ { FactoryBot.create(:type_de_champ, :checkbox) } end trait :header_section do - type_de_champ { FactoryBot.create(:type_de_champ_public, :header_section) } + type_de_champ { FactoryBot.create(:type_de_champ, :header_section) } end trait :explication do - type_de_champ { FactoryBot.create(:type_de_champ_public, :explication) } + type_de_champ { FactoryBot.create(:type_de_champ, :explication) } end trait :dossier_link do - type_de_champ { FactoryBot.create(:type_de_champ_public, :type_dossier_link) } + type_de_champ { FactoryBot.create(:type_de_champ, :type_dossier_link) } end end end diff --git a/spec/factories/procedure.rb b/spec/factories/procedure.rb index 29892706d..656a0631b 100644 --- a/spec/factories/procedure.rb +++ b/spec/factories/procedure.rb @@ -36,7 +36,7 @@ FactoryBot.define do after(:build) do |procedure, evaluator| evaluator.types_de_champ_count.times do - type_de_champ = create(:type_de_champ_public) + type_de_champ = create(:type_de_champ) procedure.types_de_champ << type_de_champ end @@ -50,7 +50,7 @@ FactoryBot.define do after(:build) do |procedure, evaluator| evaluator.types_de_champ_private_count.times do - type_de_champ = create(:type_de_champ_private) + type_de_champ = create(:type_de_champ, :private) procedure.types_de_champ_private << type_de_champ end @@ -59,7 +59,7 @@ FactoryBot.define do trait :with_type_de_champ_mandatory do after(:build) do |procedure, _evaluator| - type_de_champ = create(:type_de_champ_public, mandatory: true) + type_de_champ = create(:type_de_champ, mandatory: true) procedure.types_de_champ << type_de_champ end @@ -67,7 +67,7 @@ FactoryBot.define do trait :with_datetime do after(:build) do |procedure, _evaluator| - type_de_champ = create(:type_de_champ_public, mandatory: true, type_champ: :datetime) + type_de_champ = create(:type_de_champ, mandatory: true, type_champ: :datetime) procedure.types_de_champ << type_de_champ end @@ -75,7 +75,7 @@ FactoryBot.define do trait :with_dossier_link do after(:build) do |procedure, _evaluator| - type_de_champ = create(:type_de_champ_public, :type_dossier_link) + type_de_champ = create(:type_de_champ, :type_dossier_link) procedure.types_de_champ << type_de_champ end @@ -83,7 +83,7 @@ FactoryBot.define do trait :with_yes_no do after(:build) do |procedure, _evaluator| - type_de_champ = create(:type_de_champ_public, :type_yes_no) + type_de_champ = create(:type_de_champ, :type_yes_no) procedure.types_de_champ << type_de_champ end diff --git a/spec/factories/type_de_champ_public.rb b/spec/factories/type_de_champ.rb similarity index 78% rename from spec/factories/type_de_champ_public.rb rename to spec/factories/type_de_champ.rb index 9654959e1..5752a5aec 100644 --- a/spec/factories/type_de_champ_public.rb +++ b/spec/factories/type_de_champ.rb @@ -1,5 +1,5 @@ FactoryBot.define do - factory :type_de_champ_public, class: 'TypeDeChamp' do + factory :type_de_champ do private false sequence(:libelle) { |n| "Libelle du champ #{n}" } sequence(:description) { |n| "description du champ #{n}" } @@ -34,5 +34,11 @@ FactoryBot.define do type_champ 'drop_down_list' drop_down_list { create(:drop_down_list) } end + + trait :private do + private true + sequence(:libelle) { |n| "Libelle champ privé #{n}" } + sequence(:description) { |n| "description du champ privé #{n}" } + end end end diff --git a/spec/factories/type_de_champ_private.rb b/spec/factories/type_de_champ_private.rb deleted file mode 100644 index 11a434765..000000000 --- a/spec/factories/type_de_champ_private.rb +++ /dev/null @@ -1,16 +0,0 @@ -FactoryBot.define do - factory :type_de_champ_private, class: 'TypeDeChamp' do - private true - sequence(:libelle) { |n| "Libelle champ privé #{n}" } - sequence(:description) { |n| "description du champ privé #{n}" } - type_champ 'text' - order_place 1 - mandatory false - - trait :type_drop_down_list do - libelle 'Menu déroulant' - type_champ 'drop_down_list' - drop_down_list { create(:drop_down_list) } - end - end -end diff --git a/spec/features/admin/move_down_type_de_champ_private_spec.rb b/spec/features/admin/move_down_type_de_champ_private_spec.rb index b811617a0..87d0f98ef 100644 --- a/spec/features/admin/move_down_type_de_champ_private_spec.rb +++ b/spec/features/admin/move_down_type_de_champ_private_spec.rb @@ -8,10 +8,10 @@ feature 'move down button type de champs', js: true do end let(:procedure) { create(:procedure, administrateur: administrateur) } - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1) } - let!(:type_de_champ_2) { create(:type_de_champ_private, procedure: procedure, order_place: 2) } - let!(:type_de_champ_3) { create(:type_de_champ_private, procedure: procedure, order_place: 3) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1) } + let!(:type_de_champ_2) { create(:type_de_champ, :private, procedure: procedure, order_place: 2) } + let!(:type_de_champ_3) { create(:type_de_champ, :private, procedure: procedure, order_place: 3) } context 'when clicking on move down for type de champ 1' do before do diff --git a/spec/features/admin/move_down_type_de_champ_spec.rb b/spec/features/admin/move_down_type_de_champ_spec.rb index 0e9243cf9..84f291caf 100644 --- a/spec/features/admin/move_down_type_de_champ_spec.rb +++ b/spec/features/admin/move_down_type_de_champ_spec.rb @@ -8,10 +8,10 @@ feature 'move down button type de champs', js: true do end let(:procedure) { create(:procedure, administrateur: administrateur) } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } - let!(:type_de_champ_2) { create(:type_de_champ_public, procedure: procedure, order_place: 2) } - let!(:type_de_champ_3) { create(:type_de_champ_public, procedure: procedure, order_place: 3) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } + let!(:type_de_champ_2) { create(:type_de_champ, procedure: procedure, order_place: 2) } + let!(:type_de_champ_3) { create(:type_de_champ, procedure: procedure, order_place: 3) } context 'when clicking on move down for type de champ 1' do before do diff --git a/spec/features/admin/move_up_type_de_champ_private_spec.rb b/spec/features/admin/move_up_type_de_champ_private_spec.rb index 377fcea61..b0f0bec29 100644 --- a/spec/features/admin/move_up_type_de_champ_private_spec.rb +++ b/spec/features/admin/move_up_type_de_champ_private_spec.rb @@ -8,10 +8,10 @@ feature 'move up button type de champs', js: true do end let(:procedure) { create(:procedure, administrateur: administrateur) } - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1) } - let!(:type_de_champ_2) { create(:type_de_champ_private, procedure: procedure, order_place: 2) } - let!(:type_de_champ_3) { create(:type_de_champ_private, procedure: procedure, order_place: 3) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1) } + let!(:type_de_champ_2) { create(:type_de_champ, :private, procedure: procedure, order_place: 2) } + let!(:type_de_champ_3) { create(:type_de_champ, :private, procedure: procedure, order_place: 3) } context 'when clicking on move down for type de champ 1' do before do diff --git a/spec/features/admin/move_up_type_de_champ_spec.rb b/spec/features/admin/move_up_type_de_champ_spec.rb index 28c0ab9f5..4f0679509 100644 --- a/spec/features/admin/move_up_type_de_champ_spec.rb +++ b/spec/features/admin/move_up_type_de_champ_spec.rb @@ -8,10 +8,10 @@ feature 'move up button type de champs', js: true do end let(:procedure) { create(:procedure, administrateur: administrateur) } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } - let!(:type_de_champ_2) { create(:type_de_champ_public, procedure: procedure, order_place: 2) } - let!(:type_de_champ_3) { create(:type_de_champ_public, procedure: procedure, order_place: 3) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } + let!(:type_de_champ_2) { create(:type_de_champ, procedure: procedure, order_place: 2) } + let!(:type_de_champ_3) { create(:type_de_champ, procedure: procedure, order_place: 3) } context 'when clicking on move down for type de champ 1' do before do diff --git a/spec/features/users/flux_de_commentaires_spec.rb b/spec/features/users/flux_de_commentaires_spec.rb index b39c5717e..92a68e63f 100644 --- a/spec/features/users/flux_de_commentaires_spec.rb +++ b/spec/features/users/flux_de_commentaires_spec.rb @@ -6,7 +6,7 @@ feature 'users: flux de commentaires' do let(:dossier_id) { dossier.id } let(:champ1) { dossier.champs.first } - let(:champ2) { create(:champ, dossier: dossier, type_de_champ: create(:type_de_champ_public, libelle: "subtitle")) } + let(:champ2) { create(:champ, dossier: dossier, type_de_champ: create(:type_de_champ, libelle: "subtitle")) } let!(:commentaire1) { create(:commentaire, dossier: dossier, champ: champ1) } let!(:commentaire2) { create(:commentaire, dossier: dossier) } diff --git a/spec/jobs/find_dubious_procedures_job_spec.rb b/spec/jobs/find_dubious_procedures_job_spec.rb index d18ac6992..ba34e3cb3 100644 --- a/spec/jobs/find_dubious_procedures_job_spec.rb +++ b/spec/jobs/find_dubious_procedures_job_spec.rb @@ -4,7 +4,7 @@ RSpec.describe FindDubiousProceduresJob, type: :job do describe 'perform' do let(:mailer_double) { double('mailer', deliver_now: true) } let(:procedure) { create(:procedure) } - let(:allowed_tdc) { create(:type_de_champ_public, libelle: 'fournir') } + let(:allowed_tdc) { create(:type_de_champ, libelle: 'fournir') } before do allow(AdministrationMailer).to receive(:dubious_procedures) @@ -17,8 +17,8 @@ RSpec.describe FindDubiousProceduresJob, type: :job do context 'with suspicious champs' do let(:forbidden_tdcs) do [ - create(:type_de_champ_public, libelle: 'num de securite sociale, stp'), - create(:type_de_champ_public, libelle: "t'aurais une carte bancaire ?") + create(:type_de_champ, libelle: 'num de securite sociale, stp'), + create(:type_de_champ, libelle: "t'aurais une carte bancaire ?") ] end diff --git a/spec/models/attestation_template_spec.rb b/spec/models/attestation_template_spec.rb index 455907c8a..680c72ef2 100644 --- a/spec/models/attestation_template_spec.rb +++ b/spec/models/attestation_template_spec.rb @@ -149,8 +149,8 @@ describe AttestationTemplate, type: :model do context 'when the procedure has a type de champ named libelleA et libelleB' do let(:types_de_champ) do [ - create(:type_de_champ_public, libelle: 'libelleA'), - create(:type_de_champ_public, libelle: 'libelleB') + create(:type_de_champ, libelle: 'libelleA'), + create(:type_de_champ, libelle: 'libelleB') ] end diff --git a/spec/models/champ_private_spec.rb b/spec/models/champ_private_spec.rb index 5e3dee9af..c6f60362a 100644 --- a/spec/models/champ_private_spec.rb +++ b/spec/models/champ_private_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' describe Champ do describe '#private?' do - let(:type_de_champ) { build(:type_de_champ_private) } + let(:type_de_champ) { build(:type_de_champ, :private) } let(:champ) { type_de_champ.champ.build } it { expect(champ.private?).to be_truthy } diff --git a/spec/models/champ_shared_example.rb b/spec/models/champ_shared_example.rb index 6c42ed032..2fd1a1a3f 100644 --- a/spec/models/champ_shared_example.rb +++ b/spec/models/champ_shared_example.rb @@ -1,6 +1,6 @@ shared_examples 'champ_spec' do describe 'mandatory_and_blank?' do - let(:type_de_champ) { build(:type_de_champ_public, mandatory: mandatory) } + let(:type_de_champ) { build(:type_de_champ, mandatory: mandatory) } let(:champ) { type_de_champ.champ.build(value: value) } let(:value) { '' } let(:mandatory) { true } @@ -33,7 +33,7 @@ shared_examples 'champ_spec' do end context "when type_champ=date" do - let(:type_de_champ) { create(:type_de_champ_public, type_champ: "date") } + let(:type_de_champ) { create(:type_de_champ, type_champ: "date") } let(:champ) { type_de_champ.champ.create } it "should convert %d/%m/%Y format to ISO" do diff --git a/spec/models/champ_spec.rb b/spec/models/champ_spec.rb index f56a0f390..5a4f1d15c 100644 --- a/spec/models/champ_spec.rb +++ b/spec/models/champ_spec.rb @@ -6,7 +6,7 @@ describe Champ do it_should_behave_like "champ_spec" describe '#public?' do - let(:type_de_champ) { build(:type_de_champ_public) } + let(:type_de_champ) { build(:type_de_champ) } let(:champ) { type_de_champ.champ.build } it { expect(champ.public?).to be_truthy } @@ -14,7 +14,7 @@ describe Champ do end describe '#format_datetime' do - let(:type_de_champ) { build(:type_de_champ_public, type_champ: 'datetime') } + let(:type_de_champ) { build(:type_de_champ, type_champ: 'datetime') } let(:champ) { type_de_champ.champ.build(value: value) } before { champ.save } @@ -33,7 +33,7 @@ describe Champ do end describe '#multiple_select_to_string' do - let(:type_de_champ) { build(:type_de_champ_public, type_champ: 'multiple_drop_down_list') } + let(:type_de_champ) { build(:type_de_champ, type_champ: 'multiple_drop_down_list') } let(:champ) { type_de_champ.champ.build(value: value) } before { champ.save } @@ -71,7 +71,7 @@ describe Champ do end describe 'for_export' do - let(:type_de_champ) { create(:type_de_champ_public, type_champ: type_champ) } + let(:type_de_champ) { create(:type_de_champ, type_champ: type_champ) } let(:champ) { type_de_champ.champ.build(value: value) } before { champ.save } diff --git a/spec/models/concern/tags_substitution_concern_spec.rb b/spec/models/concern/tags_substitution_concern_spec.rb index 4f6f185a2..42cc2bd44 100644 --- a/spec/models/concern/tags_substitution_concern_spec.rb +++ b/spec/models/concern/tags_substitution_concern_spec.rb @@ -71,8 +71,8 @@ describe TagsSubstitutionConcern, type: :model do context 'when the procedure has a type de champ named libelleA et libelleB' do let(:types_de_champ) do [ - create(:type_de_champ_public, libelle: 'libelleA'), - create(:type_de_champ_public, libelle: 'libelleB') + create(:type_de_champ, libelle: 'libelleA'), + create(:type_de_champ, libelle: 'libelleB') ] end @@ -123,7 +123,7 @@ describe TagsSubstitutionConcern, type: :model do end context 'when the procedure has a type de champ prive named libelleA' do - let(:types_de_champ_private) { [create(:type_de_champ_private, libelle: 'libelleA')] } + let(:types_de_champ_private) { [create(:type_de_champ, :private, libelle: 'libelleA')] } context 'and it is used in the template' do let(:template) { '--libelleA--' } @@ -144,13 +144,13 @@ describe TagsSubstitutionConcern, type: :model do # The dossier just transitionned from brouillon to en construction, # so champs private are not valid tags yet - let(:types_de_champ_private) { [create(:type_de_champ_private, libelle: 'libelleA')] } + let(:types_de_champ_private) { [create(:type_de_champ, :private, libelle: 'libelleA')] } it { is_expected.to eq('--libelleA--') } end context 'champs publics are valid tags' do - let(:types_de_champ) { [create(:type_de_champ_public, libelle: 'libelleA')] } + let(:types_de_champ) { [create(:type_de_champ, libelle: 'libelleA')] } before { dossier.champs.first.update_attributes(value: 'libelle1') } @@ -161,8 +161,8 @@ describe TagsSubstitutionConcern, type: :model do context 'when the procedure has 2 types de champ date and datetime' do let(:types_de_champ) do [ - create(:type_de_champ_public, libelle: 'date', type_champ: 'date'), - create(:type_de_champ_public, libelle: 'datetime', type_champ: 'datetime') + create(:type_de_champ, libelle: 'date', type_champ: 'date'), + create(:type_de_champ, libelle: 'datetime', type_champ: 'datetime') ] end @@ -224,13 +224,13 @@ describe TagsSubstitutionConcern, type: :model do shared_examples "treat all kinds of space as equivalent" do context 'and the champ has a non breaking space' do - let(:types_de_champ) { [create(:type_de_champ_public, libelle: 'mon tag')] } + let(:types_de_champ) { [create(:type_de_champ, libelle: 'mon tag')] } it { is_expected.to eq('valeur') } end context 'and the champ has an ordinary space' do - let(:types_de_champ) { [create(:type_de_champ_public, libelle: 'mon tag')] } + let(:types_de_champ) { [create(:type_de_champ, libelle: 'mon tag')] } it { is_expected.to eq('valeur') } end @@ -265,8 +265,8 @@ describe TagsSubstitutionConcern, type: :model do describe 'tags' do subject { template_concern.tags } - let(:types_de_champ) { [create(:type_de_champ_public, libelle: 'public')] } - let(:types_de_champ_private) { [create(:type_de_champ_private, libelle: 'privé')] } + let(:types_de_champ) { [create(:type_de_champ, libelle: 'public')] } + let(:types_de_champ_private) { [create(:type_de_champ, :private, libelle: 'privé')] } context 'when generating a document for a dossier terminé' do it { is_expected.to include(include({ libelle: 'motivation' })) } diff --git a/spec/models/dossier_spec.rb b/spec/models/dossier_spec.rb index 5f8f32820..4dc9e35f0 100644 --- a/spec/models/dossier_spec.rb +++ b/spec/models/dossier_spec.rb @@ -349,9 +349,9 @@ describe Dossier do let(:dossier) { Dossier.create(user: create(:user), procedure: procedure) } before do - create(:type_de_champ_public, libelle: 'l1', order_place: 1, procedure: procedure) - create(:type_de_champ_public, libelle: 'l3', order_place: 3, procedure: procedure) - create(:type_de_champ_public, libelle: 'l2', order_place: 2, procedure: procedure) + create(:type_de_champ, libelle: 'l1', order_place: 1, procedure: procedure) + create(:type_de_champ, libelle: 'l3', order_place: 3, procedure: procedure) + create(:type_de_champ, libelle: 'l2', order_place: 2, procedure: procedure) end it { expect(dossier.ordered_champs.pluck(:libelle)).to match(%w(l1 l2 l3)) } @@ -362,9 +362,9 @@ describe Dossier do let(:dossier) { Dossier.create(user: create(:user), procedure: procedure) } before do - create :type_de_champ_private, libelle: 'l1', order_place: 1, procedure: procedure - create :type_de_champ_private, libelle: 'l3', order_place: 3, procedure: procedure - create :type_de_champ_private, libelle: 'l2', order_place: 2, procedure: procedure + create :type_de_champ, :private, libelle: 'l1', order_place: 1, procedure: procedure + create :type_de_champ, :private, libelle: 'l3', order_place: 3, procedure: procedure + create :type_de_champ, :private, libelle: 'l2', order_place: 2, procedure: procedure end it { expect(dossier.ordered_champs_private.pluck(:libelle)).to match(%w(l1 l2 l3)) } diff --git a/spec/models/drop_down_list_spec.rb b/spec/models/drop_down_list_spec.rb index 3f01f7148..130edcdd1 100644 --- a/spec/models/drop_down_list_spec.rb +++ b/spec/models/drop_down_list_spec.rb @@ -47,14 +47,14 @@ describe DropDownList do end context 'when multiple' do - let(:type_de_champ) { build(:type_de_champ_public, type_champ: 'multiple_drop_down_list') } + let(:type_de_champ) { build(:type_de_champ, type_champ: 'multiple_drop_down_list') } let(:champ) { type_de_champ.champ.build(value: '["1","2"]').decorate } it { expect(dropdownlist.selected_options(champ)).to match(['1', '2']) } end context 'when simple' do - let(:type_de_champ) { build(:type_de_champ_public, type_champ: 'drop_down_list') } + let(:type_de_champ) { build(:type_de_champ, type_champ: 'drop_down_list') } let(:champ) { type_de_champ.champ.build(value: '1').decorate } it { expect(dropdownlist.selected_options(champ)).to match(['1']) } diff --git a/spec/models/procedure_spec.rb b/spec/models/procedure_spec.rb index c749185e8..827205514 100644 --- a/spec/models/procedure_spec.rb +++ b/spec/models/procedure_spec.rb @@ -69,8 +69,8 @@ describe Procedure do describe '#types_de_champ_ordered' do let(:procedure) { create(:procedure) } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 1) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 0) } subject { procedure.types_de_champ_ordered } it { expect(subject.first).to eq(type_de_champ_1) } it { expect(subject.last).to eq(type_de_champ_0) } @@ -85,8 +85,8 @@ describe Procedure do it { expect(subject).to eq(false) } end context 'when procedure have 2 types de champ' do - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } context 'when index is not the last element' do it { expect(subject).to eq(true) } it 'switch order place' do @@ -153,12 +153,12 @@ describe Procedure do let(:archived_at) { nil } let(:published_at) { nil } let(:procedure) { create(:procedure, archived_at: archived_at, published_at: published_at, received_mail: received_mail) } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } - let!(:type_de_champ_2) { create(:type_de_champ_public, :type_drop_down_list, procedure: procedure, order_place: 2) } - let!(:type_de_champ_private_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } - let!(:type_de_champ_private_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1) } - let!(:type_de_champ_private_2) { create(:type_de_champ_private, :type_drop_down_list, procedure: procedure, order_place: 2) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } + let!(:type_de_champ_2) { create(:type_de_champ, :type_drop_down_list, procedure: procedure, order_place: 2) } + let!(:type_de_champ_private_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_private_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1) } + let!(:type_de_champ_private_2) { create(:type_de_champ, :private, :type_drop_down_list, procedure: procedure, order_place: 2) } let!(:piece_justificative_0) { create(:type_de_piece_justificative, procedure: procedure, order_place: 0) } let!(:piece_justificative_1) { create(:type_de_piece_justificative, procedure: procedure, order_place: 1) } let(:received_mail){ create(:received_mail) } @@ -342,10 +342,10 @@ describe Procedure do it { expect(subject[:headers]).to eq(dossier.export_headers) } context 'with ordered champs' do - let(:tc_2) { create(:type_de_champ_public, order_place: 2) } - let(:tc_1) { create(:type_de_champ_public, order_place: 1) } - let(:tcp_2) { create(:type_de_champ_private, order_place: 2) } - let(:tcp_1) { create(:type_de_champ_private, order_place: 1) } + let(:tc_2) { create(:type_de_champ, order_place: 2) } + let(:tc_1) { create(:type_de_champ, order_place: 1) } + let(:tcp_2) { create(:type_de_champ, :private, order_place: 2) } + let(:tcp_1) { create(:type_de_champ, :private, order_place: 1) } before do procedure.types_de_champ << tc_2 << tc_1 diff --git a/spec/models/type_de_champ_private_spec.rb b/spec/models/type_de_champ_private_spec.rb index 19b8a631b..161897d8e 100644 --- a/spec/models/type_de_champ_private_spec.rb +++ b/spec/models/type_de_champ_private_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' describe TypeDeChamp do describe '#private?' do - let(:type_de_champ) { build(:type_de_champ_private) } + let(:type_de_champ) { build(:type_de_champ, :private) } it { expect(type_de_champ.private?).to be_truthy } it { expect(type_de_champ.public?).to be_falsey } diff --git a/spec/services/champs_service_spec.rb b/spec/services/champs_service_spec.rb index 108596113..4aa2578e0 100644 --- a/spec/services/champs_service_spec.rb +++ b/spec/services/champs_service_spec.rb @@ -1,9 +1,9 @@ require 'spec_helper' describe ChampsService do - let(:type_de_champ) { create(:type_de_champ_public) } - let(:type_de_champ_mandatory) { create(:type_de_champ_public, libelle: 'mandatory', mandatory: true) } - let(:type_de_champ_datetime) { create(:type_de_champ_public, type_champ: :datetime) } + let(:type_de_champ) { create(:type_de_champ) } + let(:type_de_champ_mandatory) { create(:type_de_champ, libelle: 'mandatory', mandatory: true) } + let(:type_de_champ_datetime) { create(:type_de_champ, type_champ: :datetime) } let!(:champ) { type_de_champ.champ.create(value: 'toto') } let!(:champ_mandatory_empty) { type_de_champ_mandatory.champ.create } let!(:champ_datetime) { type_de_champ_datetime.champ.create } diff --git a/spec/views/admin/types_de_champ/show.html.haml_spec.rb b/spec/views/admin/types_de_champ/show.html.haml_spec.rb index 1921dd9f6..566542f23 100644 --- a/spec/views/admin/types_de_champ/show.html.haml_spec.rb +++ b/spec/views/admin/types_de_champ/show.html.haml_spec.rb @@ -6,8 +6,8 @@ describe 'admin/types_de_champ/show.html.haml', type: :view do describe 'fields sorted' do let(:first_libelle) { 'salut la compagnie' } let(:last_libelle) { 'je suis bien sur la page' } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1, libelle: last_libelle) } - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0, libelle: first_libelle) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1, libelle: last_libelle) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0, libelle: first_libelle) } before do procedure.reload assign(:procedure, procedure) @@ -32,15 +32,15 @@ describe 'admin/types_de_champ/show.html.haml', type: :view do it { expect(subject).not_to have_css('.fa-chevron-up') } end context 'when there is only one field in database' do - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } it { expect(subject).to have_css('#btn_down_0[style*="visibility: hidden"]') } it { expect(subject).to have_css('#btn_up_0[style*="visibility: hidden"]') } it { expect(subject).not_to have_css('#btn_up_1') } it { expect(subject).not_to have_css('#btn_down_1') } end context 'when there are 2 fields in database' do - let!(:type_de_champ_0) { create(:type_de_champ_public, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_public, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, procedure: procedure, order_place: 1) } it { expect(subject).to have_css('#btn_down_0') } it { expect(subject).to have_css('#btn_up_0[style*="visibility: hidden"]') } it { expect(subject).to have_css('#btn_up_1') } diff --git a/spec/views/admin/types_de_champ_private/show.html.haml_spec.rb b/spec/views/admin/types_de_champ_private/show.html.haml_spec.rb index 36dce5ecc..7e9708199 100644 --- a/spec/views/admin/types_de_champ_private/show.html.haml_spec.rb +++ b/spec/views/admin/types_de_champ_private/show.html.haml_spec.rb @@ -6,8 +6,8 @@ describe 'admin/types_de_champ/show.html.haml', type: :view do describe 'fields sorted' do let(:first_libelle) { 'salut la compagnie' } let(:last_libelle) { 'je suis bien sur la page' } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1, libelle: last_libelle) } - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0, libelle: first_libelle) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1, libelle: last_libelle) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0, libelle: first_libelle) } before do procedure.reload assign(:procedure, procedure) @@ -40,15 +40,15 @@ describe 'admin/types_de_champ/show.html.haml', type: :view do it { expect(subject).not_to have_css('.fa-chevron-up') } end context 'when there is only one field in database' do - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } it { expect(subject).to have_css('#btn_down_0[style*="visibility: hidden"]') } it { expect(subject).to have_css('#btn_up_0[style*="visibility: hidden"]') } it { expect(subject).not_to have_css('#btn_up_1') } it { expect(subject).not_to have_css('#btn_down_1') } end context 'when there are 2 fields in database' do - let!(:type_de_champ_0) { create(:type_de_champ_private, procedure: procedure, order_place: 0) } - let!(:type_de_champ_1) { create(:type_de_champ_private, procedure: procedure, order_place: 1) } + let!(:type_de_champ_0) { create(:type_de_champ, :private, procedure: procedure, order_place: 0) } + let!(:type_de_champ_1) { create(:type_de_champ, :private, procedure: procedure, order_place: 1) } it { expect(subject).to have_css('#btn_down_0') } it { expect(subject).to have_css('#btn_up_0[style*="visibility: hidden"]') } it { expect(subject).to have_css('#btn_up_1') } diff --git a/spec/views/users/description/champs/_date.html.haml_spec.rb b/spec/views/users/description/champs/_date.html.haml_spec.rb index 5e0e797e7..5cb1ed190 100644 --- a/spec/views/users/description/champs/_date.html.haml_spec.rb +++ b/spec/views/users/description/champs/_date.html.haml_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' describe 'users/description/champs/date.html.haml', type: :view do - let(:type_champ) { create(:type_de_champ_public, type_champ: :date) } + let(:type_champ) { create(:type_de_champ, type_champ: :date) } before do render 'users/description/champs/date.html.haml', champ: champ diff --git a/spec/views/users/description/champs/_dossier_link.html.haml_spec.rb b/spec/views/users/description/champs/_dossier_link.html.haml_spec.rb index 970ab4a43..2a01477e8 100644 --- a/spec/views/users/description/champs/_dossier_link.html.haml_spec.rb +++ b/spec/views/users/description/champs/_dossier_link.html.haml_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' describe 'users/description/champs/dossier_link.html.haml', type: :view do - let(:type_champ) { create(:type_de_champ_public, type_champ: :dossier_link) } + let(:type_champ) { create(:type_de_champ, type_champ: :dossier_link) } before do render 'users/description/champs/dossier_link.html.haml', champ: champ diff --git a/spec/views/users/description/champs/_engagement.html.haml_spec.rb b/spec/views/users/description/champs/_engagement.html.haml_spec.rb index a5ddd2f1d..c35c97662 100644 --- a/spec/views/users/description/champs/_engagement.html.haml_spec.rb +++ b/spec/views/users/description/champs/_engagement.html.haml_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' describe 'users/description/champs/engagement.html.haml', type: :view do - let(:type_champ) { create(:type_de_champ_public, type_champ: :engagement) } + let(:type_champ) { create(:type_de_champ, type_champ: :engagement) } subject { render 'users/description/champs/engagement.html.haml', champ: champ } diff --git a/spec/views/users/description/champs/_render_list_champs.html.haml_spec.rb b/spec/views/users/description/champs/_render_list_champs.html.haml_spec.rb index 233114a9b..f790279ab 100644 --- a/spec/views/users/description/champs/_render_list_champs.html.haml_spec.rb +++ b/spec/views/users/description/champs/_render_list_champs.html.haml_spec.rb @@ -1,5 +1,5 @@ describe 'users/description/champs/render_list_champs.html.haml', type: :view do - let(:type_champ) { create(:type_de_champ_public, :checkbox) } + let(:type_champ) { create(:type_de_champ, :checkbox) } context "with any champ" do let!(:champ) { create(:champ, type_de_champ: type_champ, value: nil) } @@ -40,7 +40,7 @@ describe 'users/description/champs/render_list_champs.html.haml', type: :view do end context 'with a dossier_link' do - let(:type_champ) { create(:type_de_champ_public, type_champ: :dossier_link) } + let(:type_champ) { create(:type_de_champ, type_champ: :dossier_link) } let!(:champ) { create(:champ, type_de_champ: type_champ, value: nil) } before do diff --git a/spec/views/users/description/champs/_yes_no.html.haml_spec.rb b/spec/views/users/description/champs/_yes_no.html.haml_spec.rb index 9d2af680c..22ece7583 100644 --- a/spec/views/users/description/champs/_yes_no.html.haml_spec.rb +++ b/spec/views/users/description/champs/_yes_no.html.haml_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' describe 'users/description/champs/yes_no.html.haml', type: :view do - let(:type_champ) { create(:type_de_champ_public, type_champ: :yes_no) } + let(:type_champ) { create(:type_de_champ, type_champ: :yes_no) } before do render 'users/description/champs/yes_no.html.haml', champ: champ