diff --git a/lib/validates_timeliness/railtie.rb b/lib/validates_timeliness/railtie.rb index 6b88d61..3c4cd5e 100644 --- a/lib/validates_timeliness/railtie.rb +++ b/lib/validates_timeliness/railtie.rb @@ -11,5 +11,13 @@ module ValidatesTimeliness initializer "validates_timeliness.initialize_restriction_errors" do ValidatesTimeliness.ignore_restriction_errors = !Rails.env.test? end + + initializer "validates_timeliness.initialize_timeliness_ambiguous_date_format" do + if Timeliness.respond_to?(:ambiguous_date_format) # i.e. v0.4+ + # Set default for each new thread if you have changed the default using + # the format switching methods. + Timeliness.configuration.ambiguous_date_format = Timeliness::Definitions.current_date_format + end + end end end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index a75afd2..a09ec1c 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -9,6 +9,8 @@ require 'timecop' require 'validates_timeliness' require 'validates_timeliness/orm/active_model' +require 'rails/railtie' + require 'support/test_model' require 'support/model_helpers' require 'support/config_helper' diff --git a/spec/validates_timeliness/railtie_spec.rb b/spec/validates_timeliness/railtie_spec.rb new file mode 100644 index 0000000..b7dfacf --- /dev/null +++ b/spec/validates_timeliness/railtie_spec.rb @@ -0,0 +1,22 @@ +require 'validates_timeliness/railtie' + +RSpec.describe ValidatesTimeliness::Railtie do + context "intializers" do + context "validates_timeliness.initialize_timeliness_ambiguous_date_format" do + it 'should set the timeliness default ambiguous date format from the current format' do + expect(Timeliness.configuration.ambiguous_date_format).to eq :us + ValidatesTimeliness.parser.use_euro_formats + + initializer("validates_timeliness.initialize_timeliness_ambiguous_date_format").run + + expect(Timeliness.configuration.ambiguous_date_format).to eq :euro + end + end if Timeliness.respond_to?(:ambiguous_date_format) + + def initializer(name) + ValidatesTimeliness::Railtie.initializers.find { |i| + i.name == name + } || raise("Initializer #{name} not found") + end + end +end