aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/yaml_serialization_test.rb
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2014-06-01 18:55:55 +0200
committerYves Senn <yves.senn@gmail.com>2014-06-01 18:55:55 +0200
commit260c384bdb539265b31d3937df48e528acb50800 (patch)
tree6012932fd76e47f10d077fdb60ff440f9fe824c2 /activerecord/test/cases/yaml_serialization_test.rb
parent75f75a8719e8dbe8ce14874ae4bd1eac0eee67ab (diff)
parent93734629a33591486b76e3b9884ea37650934eef (diff)
downloadrails-260c384bdb539265b31d3937df48e528acb50800.tar.gz
rails-260c384bdb539265b31d3937df48e528acb50800.tar.bz2
rails-260c384bdb539265b31d3937df48e528acb50800.zip
Merge pull request #15432 from sgrif/sg-coder-type-casting
Don't change values in `@raw_attributes` during serialization
Diffstat (limited to 'activerecord/test/cases/yaml_serialization_test.rb')
-rw-r--r--activerecord/test/cases/yaml_serialization_test.rb19
1 files changed, 12 insertions, 7 deletions
diff --git a/activerecord/test/cases/yaml_serialization_test.rb b/activerecord/test/cases/yaml_serialization_test.rb
index 15815d56e4..f7af9a35cd 100644
--- a/activerecord/test/cases/yaml_serialization_test.rb
+++ b/activerecord/test/cases/yaml_serialization_test.rb
@@ -23,13 +23,6 @@ class YamlSerializationTest < ActiveRecord::TestCase
assert_equal({:omg=>:lol}, YAML.load(YAML.dump(topic)).content)
end
- def test_encode_with_coder
- topic = Topic.first
- coder = {}
- topic.encode_with coder
- assert_equal({'attributes' => topic.attributes}, coder)
- end
-
def test_psych_roundtrip
topic = Topic.first
assert topic
@@ -47,4 +40,16 @@ class YamlSerializationTest < ActiveRecord::TestCase
def test_active_record_relation_serialization
[Topic.all].to_yaml
end
+
+ def test_raw_types_are_not_changed_on_round_trip
+ topic = Topic.new(parent_id: "123")
+ assert_equal "123", topic.parent_id_before_type_cast
+ assert_equal "123", YAML.load(YAML.dump(topic)).parent_id_before_type_cast
+ end
+
+ def test_cast_types_are_not_changed_on_round_trip
+ topic = Topic.new(parent_id: "123")
+ assert_equal 123, topic.parent_id
+ assert_equal 123, YAML.load(YAML.dump(topic)).parent_id
+ end
end