aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/associations/belongs_to_associations_test.rb
diff options
context:
space:
mode:
authorWashington Luiz <huoxito@gmail.com>2014-03-14 22:20:13 -0300
committerWashington Luiz <huoxito@gmail.com>2014-03-14 22:20:13 -0300
commitea3a73e720b5ffed6b6220dc9ce92776804cb06f (patch)
treef5e3b3783d9fef9a0e89ee4f032221bbdbd485d7 /activerecord/test/cases/associations/belongs_to_associations_test.rb
parentb4c96490eeb1fbb944e116c7703dd528b37fc08a (diff)
downloadrails-ea3a73e720b5ffed6b6220dc9ce92776804cb06f.tar.gz
rails-ea3a73e720b5ffed6b6220dc9ce92776804cb06f.tar.bz2
rails-ea3a73e720b5ffed6b6220dc9ce92776804cb06f.zip
Still touch associations when theres no timestamp
Prior to Rails 4.0.4 when touching a object which doesn't have timestamp attributes (updated_at / updated_on) rails would still touch all associations. After 73ba2c14cd7d7dfb2d132b18c47ade995401736f it updates associations but rollsback because `touch` would return nil since there's no timestamp attribute
Diffstat (limited to 'activerecord/test/cases/associations/belongs_to_associations_test.rb')
-rw-r--r--activerecord/test/cases/associations/belongs_to_associations_test.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/activerecord/test/cases/associations/belongs_to_associations_test.rb b/activerecord/test/cases/associations/belongs_to_associations_test.rb
index 9340bc0a83..5c9ec3104f 100644
--- a/activerecord/test/cases/associations/belongs_to_associations_test.rb
+++ b/activerecord/test/cases/associations/belongs_to_associations_test.rb
@@ -340,6 +340,17 @@ class BelongsToAssociationsTest < ActiveRecord::TestCase
assert_queries(1) { line_item.touch }
end
+ def test_belongs_to_with_touch_option_on_touch_without_updated_at_attributes
+ assert !LineItem.column_names.include?("updated_at")
+
+ line_item = LineItem.create!
+ invoice = Invoice.create!(line_items: [line_item])
+ initial = invoice.updated_at
+ line_item.touch
+
+ refute_equal initial, invoice.reload.updated_at
+ end
+
def test_belongs_to_with_touch_option_on_touch_and_removed_parent
line_item = LineItem.create!
Invoice.create!(line_items: [line_item])