diff --git a/app/models/validations/shared_validations.rb b/app/models/validations/shared_validations.rb index 20e99e2cf..75ddaf745 100644 --- a/app/models/validations/shared_validations.rb +++ b/app/models/validations/shared_validations.rb @@ -70,6 +70,8 @@ module Validations::SharedValidations end def validate_valid_radio_option(record) + return unless FeatureToggle.validate_valid_radio_options? + record.attributes.each do |question_id, _v| question = record.form.get_question(question_id, record) diff --git a/config/initializers/feature_toggle.rb b/config/initializers/feature_toggle.rb index 6097caeb5..7a1d8ae23 100644 --- a/config/initializers/feature_toggle.rb +++ b/config/initializers/feature_toggle.rb @@ -30,4 +30,8 @@ class FeatureToggle def self.upload_enabled? !Rails.env.development? end + + def self.validate_valid_radio_options? + !(Rails.env.production? || Rails.env.staging?) + end end diff --git a/spec/models/validations/shared_validations_spec.rb b/spec/models/validations/shared_validations_spec.rb index 7261e6012..a88b5dda2 100644 --- a/spec/models/validations/shared_validations_spec.rb +++ b/spec/models/validations/shared_validations_spec.rb @@ -84,5 +84,18 @@ RSpec.describe Validations::SharedValidations do expect(record.errors["needstype"]).to be_present expect(record.errors["needstype"]).to eql(["Enter a valid value for needs type"]) end + + context "when feature is toggled off" do + before do + allow(FeatureToggle).to receive(:validate_valid_radio_options?).and_return(false) + end + + it "allows any values" do + record.needstype = 3 + shared_validator.validate_valid_radio_option(record) + + expect(record.errors["needstype"]).to be_empty + end + end end end