1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

remove depricated Validatior#setup

This commit is contained in:
Kuldeep Aggarwal 2014-06-10 12:27:17 +05:30
parent 254efb712a
commit e5cc892ce6
2 changed files with 0 additions and 37 deletions

View file

@ -106,7 +106,6 @@ module ActiveModel
# Accepts options that will be made available through the +options+ reader.
def initialize(options = {})
@options = options.except(:class).freeze
deprecated_setup(options)
end
# Returns the kind for this validator.
@ -122,21 +121,6 @@ module ActiveModel
def validate(record)
raise NotImplementedError, "Subclasses must implement a validate(record) method."
end
private
def deprecated_setup(options) # TODO: remove me in 4.2.
return unless respond_to?(:setup)
ActiveSupport::Deprecation.warn "The `Validator#setup` instance method is deprecated and will be removed on Rails 4.2. Do your setup in the constructor instead:
class MyValidator < ActiveModel::Validator
def initialize(options={})
super
options[:class].send :attr_accessor, :custom_attribute
end
end
"
setup(options[:class])
end
end
# +EachValidator+ is a validator which iterates through the attributes given

View file

@ -378,25 +378,4 @@ class ValidationsTest < ActiveModel::TestCase
assert topic.invalid?
assert duped.valid?
end
# validator test:
def test_setup_is_deprecated_but_still_receives_klass # TODO: remove me in 4.2.
validator_class = Class.new(ActiveModel::Validator) do
def setup(klass)
@old_klass = klass
end
def validate(*)
@old_klass == Topic or raise "#setup didn't work"
end
end
assert_deprecated do
Topic.validates_with validator_class
end
t = Topic.new
t.valid?
end
end