aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/persistence_test.rb
diff options
context:
space:
mode:
authorKuldeep Aggarwal <kd.engineer@yahoo.co.in>2014-04-19 00:01:01 +0530
committerKuldeep Aggarwal <kd.engineer@yahoo.co.in>2014-04-19 00:01:01 +0530
commit5fe4e62807adc61c42c2d94ec36802f25554224a (patch)
tree6b9501cd4fed638a55a4dd4ec87886dc8bfe8383 /activerecord/test/cases/persistence_test.rb
parent98e8c96d42052dd74310aa95102c55f3762becce (diff)
downloadrails-5fe4e62807adc61c42c2d94ec36802f25554224a.tar.gz
rails-5fe4e62807adc61c42c2d94ec36802f25554224a.tar.bz2
rails-5fe4e62807adc61c42c2d94ec36802f25554224a.zip
`@destroyed` should always be set to `false` when an object is duped.
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 046fe83e54..9209672ac5 100644
--- a/activerecord/test/cases/persistence_test.rb
+++ b/activerecord/test/cases/persistence_test.rb
@@ -233,6 +233,22 @@ class PersistenceTest < ActiveRecord::TestCase
assert_nothing_raised { Minimalistic.create!(:id => 2) }
end
+ def test_save_with_duping_of_destroyed_object
+ developer = Developer.create(name: "Kuldeep")
+ developer.destroy
+ new_developer = developer.dup
+ new_developer.save
+ assert new_developer.persisted?
+ end
+
+ def test_dup_of_destroyed_object_is_not_destroyed
+ developer = Developer.create(name: "Kuldeep")
+ developer.destroy
+ new_developer = developer.dup
+ new_developer.save
+ assert_equal new_developer.destroyed?, false
+ end
+
def test_create_many
topics = Topic.create([ { "title" => "first" }, { "title" => "second" }])
assert_equal 2, topics.size