diff options
| author | Zog | 2018-04-26 09:07:26 +0200 | 
|---|---|---|
| committer | Zog | 2018-04-26 09:07:26 +0200 | 
| commit | 37cef4eca7eec2dbfc4be10334c787ce207b466e (patch) | |
| tree | d628f5d5ab2027bb2d49c27625b42e4c6c28626f /spec | |
| parent | 25becea7c5c2df57019212f5e5ce7fb0766312ec (diff) | |
| download | chouette-core-37cef4eca7eec2dbfc4be10334c787ce207b466e.tar.bz2 | |
Fix CustomField specs
Diffstat (limited to 'spec')
| -rw-r--r-- | spec/models/custom_field_spec.rb | 16 | 
1 files changed, 13 insertions, 3 deletions
| diff --git a/spec/models/custom_field_spec.rb b/spec/models/custom_field_spec.rb index 54fd4f9d8..0c2644499 100644 --- a/spec/models/custom_field_spec.rb +++ b/spec/models/custom_field_spec.rb @@ -52,7 +52,17 @@ RSpec.describe CustomField, type: :model do        let(:ref2){ create :workbench_referential }        before do          create :custom_field, field_type: :integer, code: :ref1_energy, name: :energy, workgroup: ref1.workgroup, options: {default: 12} -        create :custom_field, field_type: :integer, code: :ref1_energy, name: :energy, workgroup: ref1.workgroup, options: {default: 12}, resource_type: "Company" +        class CustomField +          enumerize :field_type, in: %i{list integer string attachment float_test} +          class Instance +            class FloatTest < Integer +              def preprocess_value_for_assignment val +                val&.to_f +              end +            end +          end +        end +        create :custom_field, field_type: :float_test, code: :ref1_energy, name: :energy, workgroup: ref1.workgroup, options: {default: 12}, resource_type: "Company"          create :custom_field, field_type: :integer, code: :ref2_energy, name: :energy, workgroup: ref2.workgroup        end        it "should only initialize fields from the right workgroup" do @@ -61,7 +71,7 @@ RSpec.describe CustomField, type: :model do          expect(Chouette::VehicleJourney.new.custom_field_values["ref1_energy"]).to eq 12          expect(Chouette::VehicleJourney.new(custom_field_values: {ref1_energy: 13}).custom_field_values["ref1_energy"]).to eq 13          line_referential = create(:line_referential, workgroup: ref1.workgroup) -        expect(line_referential.companies.build(custom_field_values: {ref1_energy: "13"}).custom_field_values["ref1_energy"]).to eq 13 +        expect(line_referential.companies.build(custom_field_values: {ref1_energy: "13"}).custom_field_values["ref1_energy"]).to eq 13.0          ref2.switch          expect(Chouette::VehicleJourney.new.custom_fields.keys).to eq ["ref2_energy"] @@ -120,7 +130,7 @@ RSpec.describe CustomField, type: :model do          if valid            expect(vj.validate).to be_truthy          else -          expect(vj.validate).to be_falsy +          expect(vj.validate).to be_falsy, "#{val} should not ba a valid value"            expect(vj.errors.messages[:"custom_fields.energy"]).to be_present          end        end | 
