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:
parent
254efb712a
commit
e5cc892ce6
2 changed files with 0 additions and 37 deletions
|
@ -106,7 +106,6 @@ module ActiveModel
|
||||||
# Accepts options that will be made available through the +options+ reader.
|
# Accepts options that will be made available through the +options+ reader.
|
||||||
def initialize(options = {})
|
def initialize(options = {})
|
||||||
@options = options.except(:class).freeze
|
@options = options.except(:class).freeze
|
||||||
deprecated_setup(options)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
# Returns the kind for this validator.
|
# Returns the kind for this validator.
|
||||||
|
@ -122,21 +121,6 @@ module ActiveModel
|
||||||
def validate(record)
|
def validate(record)
|
||||||
raise NotImplementedError, "Subclasses must implement a validate(record) method."
|
raise NotImplementedError, "Subclasses must implement a validate(record) method."
|
||||||
end
|
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
|
end
|
||||||
|
|
||||||
# +EachValidator+ is a validator which iterates through the attributes given
|
# +EachValidator+ is a validator which iterates through the attributes given
|
||||||
|
|
|
@ -378,25 +378,4 @@ class ValidationsTest < ActiveModel::TestCase
|
||||||
assert topic.invalid?
|
assert topic.invalid?
|
||||||
assert duped.valid?
|
assert duped.valid?
|
||||||
end
|
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
|
end
|
||||||
|
|
Loading…
Reference in a new issue