From 133689b4d37b293bc28bebb60bb810a2d5bde8a2 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Mon, 8 Jul 2024 11:42:40 +0200 Subject: [PATCH 1/2] refactor(champ): remove call to validation from value formatting code --- app/models/champ.rb | 5 ----- app/models/types_de_champ/decimal_number_type_de_champ.rb | 2 +- app/models/types_de_champ/integer_number_type_de_champ.rb | 2 +- app/models/types_de_champ/type_de_champ_base.rb | 4 ++-- 4 files changed, 4 insertions(+), 9 deletions(-) diff --git a/app/models/champ.rb b/app/models/champ.rb index c144fb470..0f3eb9525 100644 --- a/app/models/champ.rb +++ b/app/models/champ.rb @@ -107,11 +107,6 @@ class Champ < ApplicationRecord [to_s] end - def valid_value - return unless valid_champ_value? - value - end - def to_s TypeDeChamp.champ_value(type_champ, self) end diff --git a/app/models/types_de_champ/decimal_number_type_de_champ.rb b/app/models/types_de_champ/decimal_number_type_de_champ.rb index 9455283f5..486c4e5c8 100644 --- a/app/models/types_de_champ/decimal_number_type_de_champ.rb +++ b/app/models/types_de_champ/decimal_number_type_de_champ.rb @@ -20,7 +20,7 @@ class TypesDeChamp::DecimalNumberTypeDeChamp < TypesDeChamp::TypeDeChampBase private def champ_formatted_value(champ) - champ.valid_value&.to_f + champ.value&.to_f end end end diff --git a/app/models/types_de_champ/integer_number_type_de_champ.rb b/app/models/types_de_champ/integer_number_type_de_champ.rb index 7c2d3ef58..515f475aa 100644 --- a/app/models/types_de_champ/integer_number_type_de_champ.rb +++ b/app/models/types_de_champ/integer_number_type_de_champ.rb @@ -20,7 +20,7 @@ class TypesDeChamp::IntegerNumberTypeDeChamp < TypesDeChamp::TypeDeChampBase private def champ_formatted_value(champ) - champ.valid_value&.to_i + champ.value&.to_i end end end diff --git a/app/models/types_de_champ/type_de_champ_base.rb b/app/models/types_de_champ/type_de_champ_base.rb index 81217caa2..02570c8d1 100644 --- a/app/models/types_de_champ/type_de_champ_base.rb +++ b/app/models/types_de_champ/type_de_champ_base.rb @@ -66,12 +66,12 @@ class TypesDeChamp::TypeDeChampBase when 2 champ_value(champ) else - champ.valid_value.presence || champ_default_api_value(version) + champ.value.presence || champ_default_api_value(version) end end def champ_value_for_export(champ, path = :value) - path == :value ? champ.valid_value.presence : champ_default_export_value(path) + path == :value ? champ.value.presence : champ_default_export_value(path) end def champ_value_for_tag(champ, path = :value) From 96e49d54cd97a1dd723da57cbc80e54c90645305 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Mon, 8 Jul 2024 15:44:30 +0200 Subject: [PATCH 2/2] reafctor(logic): remove tests and accept unspecified behaviour --- spec/models/logic/champ_value_spec.rb | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/spec/models/logic/champ_value_spec.rb b/spec/models/logic/champ_value_spec.rb index f7b12020f..c287c57d4 100644 --- a/spec/models/logic/champ_value_spec.rb +++ b/spec/models/logic/champ_value_spec.rb @@ -40,12 +40,6 @@ describe Logic::ChampValue do it { is_expected.to be nil } end - - context 'with invalid value' do - before { champ.value = 'environ 300' } - - it { is_expected.to be nil } - end end context 'decimal tdc' do @@ -53,18 +47,6 @@ describe Logic::ChampValue do it { expect(champ_value(champ.stable_id).type([champ.type_de_champ])).to eq(:number) } it { is_expected.to eq(42.01) } - - context 'with invalid value with too many digits after the decimal point' do - before { champ.value = '42.1234' } - - it { is_expected.to be nil } - end - - context 'with invalid value' do - before { champ.value = 'racine de 2' } - - it { is_expected.to be nil } - end end context 'dropdown tdc' do