mirror of
https://github.com/ditkrg/validates_timeliness.git
synced 2026-01-23 06:16:44 +00:00
use setup block to config which classes to extend
This commit is contained in:
parent
6acf61aa88
commit
d5124f32b2
@ -14,6 +14,10 @@ require 'active_support/core_ext/date_time/zones'
|
||||
|
||||
module ValidatesTimeliness
|
||||
|
||||
# Add validation helpers to these classes
|
||||
mattr_accessor :extend_classes
|
||||
@@extend_classes = []
|
||||
|
||||
# Set the dummy date part for a time type values.
|
||||
mattr_accessor :dummy_date_for_time_type
|
||||
@@dummy_date_for_time_type = [ 2000, 1, 1 ]
|
||||
@ -21,6 +25,12 @@ module ValidatesTimeliness
|
||||
# Ignore errors when restriction options are evaluated
|
||||
mattr_accessor :ignore_restriction_errors
|
||||
@@ignore_restriction_errors = false
|
||||
|
||||
# Setup method for plugin configuration
|
||||
def self.setup
|
||||
yield self
|
||||
extend_classes.each {|klass| klass.send(:include, ValidatesTimeliness::HelperMethods) }
|
||||
end
|
||||
end
|
||||
|
||||
require 'validates_timeliness/conversion'
|
||||
|
||||
@ -1,5 +1,8 @@
|
||||
module ValidatesTimeliness
|
||||
module HelperMethods
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
module ClassMethods
|
||||
def validates_date(*attr_names)
|
||||
validates_with Validator, _merge_attributes(attr_names).merge(:type => :date)
|
||||
end
|
||||
@ -13,7 +16,4 @@ module ValidatesTimeliness
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
module ActiveModel::Validations::HelperMethods
|
||||
include ValidatesTimeliness::HelperMethods
|
||||
end
|
||||
|
||||
@ -6,17 +6,15 @@ require 'rspec/autorun'
|
||||
|
||||
require 'active_model'
|
||||
require 'active_model/validations'
|
||||
# require 'active_record'
|
||||
# require 'action_controller'
|
||||
# require 'action_view'
|
||||
# require 'action_mailer'
|
||||
# require 'rspec/rails'
|
||||
|
||||
require 'active_record'
|
||||
require 'timecop'
|
||||
require 'model_helpers'
|
||||
|
||||
require 'validates_timeliness'
|
||||
|
||||
ValidatesTimeliness.setup do |c|
|
||||
c.extend_classes = [ ActiveModel::Validations, ActiveRecord::Base ]
|
||||
end
|
||||
|
||||
Time.zone = 'Australia/Melbourne'
|
||||
|
||||
LOCALE_PATH = File.expand_path(File.dirname(__FILE__) + '/../lib/validates_timeliness/locale/en.yml')
|
||||
@ -35,6 +33,8 @@ class Person
|
||||
end
|
||||
end
|
||||
|
||||
require 'model_helpers'
|
||||
|
||||
Rspec.configure do |c|
|
||||
c.mock_with :rspec
|
||||
c.before do
|
||||
|
||||
Loading…
Reference in New Issue
Block a user