aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2012-05-30 11:26:59 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2012-05-30 11:26:59 -0700
commit1b075220ef59bbee59bb768acbc0d92e59ca38d6 (patch)
treeff31a015e259dcd5fab379fc3feb4ae451cec692 /activerecord/test/cases
parent7c1b61e50ee44abd4f6440067ec11f7ccd01df3c (diff)
parentd09b2fd09dbd8f74d1d2909c7e931fb0a664b315 (diff)
downloadrails-1b075220ef59bbee59bb768acbc0d92e59ca38d6.tar.gz
rails-1b075220ef59bbee59bb768acbc0d92e59ca38d6.tar.bz2
rails-1b075220ef59bbee59bb768acbc0d92e59ca38d6.zip
Merge pull request #5810 from kennyj/fix_5797
Fix #5797. Error calling dup method on AR model with serialized field
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/base_test.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 619fb881fa..f95230ff50 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1309,6 +1309,15 @@ class BasicsTest < ActiveRecord::TestCase
assert_equal({ :foo => :bar }, t.content_before_type_cast)
end
+ def test_serialized_attribute_calling_dup_method
+ klass = Class.new(ActiveRecord::Base)
+ klass.table_name = "topics"
+ klass.serialize :content, JSON
+
+ t = klass.new(:content => { :foo => :bar }).dup
+ assert_equal({ :foo => :bar }, t.content_before_type_cast)
+ end
+
def test_serialized_attribute_declared_in_subclass
hash = { 'important1' => 'value1', 'important2' => 'value2' }
important_topic = ImportantTopic.create("important" => hash)