Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #8713: prevent_associations_from_autoloading_on_save.patch

File prevent_associations_from_autoloading_on_save.patch, 1.5 kB (added by blaine, 1 year ago)

test and fix for assocation loading on save bug.

  • activerecord/test/associations_test.rb

    old new  
    6969end 
    7070 
    7171class AssociationProxyTest < Test::Unit::TestCase 
    72   fixtures :authors, :posts, :categorizations, :categories 
     72  fixtures :authors, :posts, :categorizations, :categories, :developers, :projects, :developers_projects 
    7373 
    7474  def test_proxy_accessors 
    7575    welcome = posts(:welcome) 
     
    9898    assert david.categories.include?(categories(:technology)) 
    9999  end 
    100100 
     101  def test_save_on_parent_does_not_load_target 
     102    david = developers(:david) 
     103 
     104    assert !david.projects.loaded? 
     105    david.update_attribute(:created_at, Time.now) 
     106    assert !david.projects.loaded? 
     107  end 
     108 
    101109end 
    102110 
    103111class HasOneAssociationsTest < Test::Unit::TestCase 
  • activerecord/lib/active_record/associations.rb

    old new  
    11011101          after_callback = <<-end_eval 
    11021102            association = instance_variable_get("@#{association_name}") 
    11031103             
    1104             if association.respond_to?(:loaded?) 
     1104            if association.respond_to?(:loaded?) && association.loaded? 
    11051105              if @new_record_before_save 
    11061106                records_to_save = association 
    11071107              else