Revert "context in validation goes through has many relationship"

This reverts commit 5e3d466d52fa4e9a42c3a1f8773a7c31da875e48.
This commit is contained in:
Aaron Patterson 2014-02-20 10:46:53 -08:00
parent 53d7b2ffe9
commit 358802b850
4 changed files with 1 additions and 27 deletions

@ -301,7 +301,7 @@ def validate_collection_association(reflection)
def association_valid?(reflection, record)
return true if record.destroyed? || record.marked_for_destruction?
unless valid = record.valid?(self.validation_context)
unless valid = record.valid?
if reflection.options[:autosave]
record.errors.each do |attribute, message|
attribute = "#{reflection.name}.#{attribute}"

@ -22,8 +22,6 @@
require 'models/categorization'
require 'models/minivan'
require 'models/speedometer'
require 'models/pirate'
require 'models/ship'
class HasManyAssociationsTestForReorderWithJoinDependency < ActiveRecord::TestCase
fixtures :authors, :posts, :comments
@ -1832,12 +1830,4 @@ def test_collection_association_with_private_kernel_method
end
end
end
test 'has_many_association passes context validation to validate children' do
pirate = FamousPirate.new
pirate.famous_ships << ship = FamousShip.new
assert_equal true, pirate.valid?
assert_equal false, pirate.valid?(:conference)
assert_equal "can't be blank", ship.errors[:name].first
end
end

@ -85,11 +85,3 @@ def log(record, callback)
class DestructivePirate < Pirate
has_one :dependent_ship, :class_name => 'Ship', :foreign_key => :pirate_id, :dependent => :destroy
end
class FamousPirate < ActiveRecord::Base
self.table_name = 'pirates'
has_many :famous_ships
validates_presence_of :catchphrase, on: :conference
end

@ -17,11 +17,3 @@ def cancel_save_callback_method
false
end
end
class FamousShip < ActiveRecord::Base
self.table_name = 'ships'
belongs_to :famous_pirate
validates_presence_of :name, on: :conference
end