aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/base_test.rb
diff options
context:
space:
mode:
authorJon Leighton <j@jonathanleighton.com>2011-08-08 14:41:23 +0100
committerJon Leighton <j@jonathanleighton.com>2011-08-08 23:28:49 +0100
commit9062b75bb7dab38977805c1de35944079a56499a (patch)
treee3b237307690bca589462a563c34438c800f11ca /activerecord/test/cases/base_test.rb
parent7db90aa7c7dfe5033ad012b8ee13e6f15d1c66f0 (diff)
downloadrails-9062b75bb7dab38977805c1de35944079a56499a.tar.gz
rails-9062b75bb7dab38977805c1de35944079a56499a.tar.bz2
rails-9062b75bb7dab38977805c1de35944079a56499a.zip
Fully marshal AR::Base objects. Fixes #2431.
Diffstat (limited to 'activerecord/test/cases/base_test.rb')
-rw-r--r--activerecord/test/cases/base_test.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 0a9340aea1..c78d887ed7 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1813,6 +1813,19 @@ class BasicsTest < ActiveRecord::TestCase
assert_equal expected.attributes, actual.attributes
end
+ def test_marshal_new_record_round_trip
+ post = Marshal.load(Marshal.dump(Post.new))
+ assert post.new_record?, "should be a new record"
+ end
+
+ def test_marshalling_with_associations
+ post = Post.new
+ post.comments.build
+ post = Marshal.load(Marshal.dump(post))
+
+ assert_equal 1, post.comments.length
+ end
+
def test_attribute_names
assert_equal ["id", "type", "ruby_type", "firm_id", "firm_name", "name", "client_of", "rating", "account_id"],
Company.attribute_names