From af1d680451254fabe1c90176eeccc53567597980 Mon Sep 17 00:00:00 2001 From: Andrew Vit Date: Tue, 14 Aug 2012 04:15:57 -0700 Subject: [PATCH] Test for becomes() type assignment & persistence --- activerecord/test/cases/base_test.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb index 062f196a12e44..320e5bd6f8249 100644 --- a/activerecord/test/cases/base_test.rb +++ b/activerecord/test/cases/base_test.rb @@ -1788,6 +1788,17 @@ def test_becomes_includes_errors assert_equal original_errors, client.errors end + def test_becomes_changes_type_attribute + topic = topics(:second) + reply = topic.becomes(SillyReply) + assert reply.type_changed? + assert reply.is_a?(SillyReply) + assert_equal "SillyReply", reply.type + reply.type = "SillyReply" + reply.save! + assert_equal "SillyReply", Reply.find(reply.id).type + end + def test_silence_sets_log_level_to_error_in_block original_logger = ActiveRecord::Base.logger log = StringIO.new