fix deprecation for ActiveRecord::Errors#generate_message in Rails 2.3.4

ginger scenario added 2.3.4
This commit is contained in:
Adam Meehan
2009-09-11 13:30:30 +10:00
parent df3283e5a1
commit c29478df45
2 changed files with 7 additions and 2 deletions

View File

@@ -123,9 +123,14 @@ module Spec
restriction = [restriction] unless restriction.is_a?(Array) restriction = [restriction] unless restriction.is_a?(Array)
restriction.map! {|r| @validator.class.send(:type_cast_value, r, @type) } restriction.map! {|r| @validator.class.send(:type_cast_value, r, @type) }
interpolate = @validator.send(:interpolation_values, option, restriction ) interpolate = @validator.send(:interpolation_values, option, restriction )
# get I18n message if defined and has interpolation keys in msg # get I18n message if defined and has interpolation keys in msg
if defined?(I18n) && !@validator.send(:custom_error_messages).include?(option) if defined?(I18n) && !@validator.send(:custom_error_messages).include?(option)
msg = @record.errors.generate_message(@expected, option, interpolate) msg = if defined?(ActiveRecord::Error)
ActiveRecord::Error.new(@record, @expected, option, interpolate).message
else
@record.errors.generate_message(@expected, option, interpolate)
end
else else
msg = msg % interpolate msg = msg % interpolate
end end

View File

@@ -9,7 +9,7 @@
# ginger spec # ginger spec
# #
Ginger.configure do |config| Ginger.configure do |config|
rails_versions = ['2.0.2', '2.1.2', '2.2.2', '2.3.2'] rails_versions = ['2.0.2', '2.1.2', '2.2.2', '2.3.3', '2.3.4']
rails_versions.each do |v| rails_versions.each do |v|
g = Ginger::Scenario.new("Rails #{v}") g = Ginger::Scenario.new("Rails #{v}")