aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/persistence_test.rb
diff options
context:
space:
mode:
authorAaron Pfeifer <aaron.pfeifer@gmail.com>2013-03-27 22:27:47 -0400
committerAaron Pfeifer <aaron.pfeifer@gmail.com>2013-03-27 22:27:47 -0400
commit482f8c15b1d699c95bfbc3d836f674a09c0d9031 (patch)
tree6d51a1488caf72c2328ac8dc7fd39fee64606580 /activerecord/test/cases/persistence_test.rb
parent57fbcc524780ce386241c8def372984583e585d6 (diff)
downloadrails-482f8c15b1d699c95bfbc3d836f674a09c0d9031.tar.gz
rails-482f8c15b1d699c95bfbc3d836f674a09c0d9031.tar.bz2
rails-482f8c15b1d699c95bfbc3d836f674a09c0d9031.zip
Fix updates not working within after_create hooks
Diffstat (limited to 'activerecord/test/cases/persistence_test.rb')
-rw-r--r--activerecord/test/cases/persistence_test.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/activerecord/test/cases/persistence_test.rb b/activerecord/test/cases/persistence_test.rb
index a29189df05..ff06bd4f8b 100644
--- a/activerecord/test/cases/persistence_test.rb
+++ b/activerecord/test/cases/persistence_test.rb
@@ -296,6 +296,22 @@ class PersistencesTest < ActiveRecord::TestCase
assert_equal "Reply", topic.type
end
+ def test_update_after_create
+ klass = Class.new(Topic) do
+ def self.name; 'Topic'; end
+ after_create do
+ update_attribute("author_name", "David")
+ end
+ end
+ topic = klass.new
+ topic.title = "Another New Topic"
+ topic.save
+
+ topicReloaded = Topic.find(topic.id)
+ assert_equal("Another New Topic", topicReloaded.title)
+ assert_equal("David", topicReloaded.author_name)
+ end
+
def test_delete
topic = Topic.find(1)
assert_equal topic, topic.delete, 'topic.delete did not return self'