aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-11-23 11:12:46 -0800
committerAaron Patterson <aaron.patterson@gmail.com>2010-11-23 14:29:04 -0800
commitc5858a6df3efefbab8925623b1e6c064c476fb26 (patch)
tree61495fba6a9f7ec13f6264232b9c4883af8bd67a /activerecord/test
parent28f4df0908180783f8cf863a8bbb30c1c139bd8d (diff)
downloadrails-c5858a6df3efefbab8925623b1e6c064c476fb26.tar.gz
rails-c5858a6df3efefbab8925623b1e6c064c476fb26.tar.bz2
rails-c5858a6df3efefbab8925623b1e6c064c476fb26.zip
adding a specific case for clone testing
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/clone_test.rb33
-rw-r--r--activerecord/test/cases/duplication_test.rb25
2 files changed, 33 insertions, 25 deletions
diff --git a/activerecord/test/cases/clone_test.rb b/activerecord/test/cases/clone_test.rb
new file mode 100644
index 0000000000..d91646efca
--- /dev/null
+++ b/activerecord/test/cases/clone_test.rb
@@ -0,0 +1,33 @@
+require "cases/helper"
+require 'models/topic'
+
+module ActiveRecord
+ class CloneTest < ActiveRecord::TestCase
+ fixtures :topics
+
+ def test_persisted
+ topic = Topic.first
+ cloned = topic.clone
+ assert topic.persisted?, 'topic persisted'
+ assert cloned.persisted?, 'topic persisted'
+ assert !cloned.new_record?, 'topic is not new'
+ end
+
+ def test_stays_frozen
+ topic = Topic.first
+ topic.freeze
+
+ cloned = topic.clone
+ assert cloned.persisted?, 'topic persisted'
+ assert !cloned.new_record?, 'topic is not new'
+ assert cloned.frozen?, 'topic should be frozen'
+ end
+
+ def test_shallow
+ topic = Topic.first
+ cloned = topic.clone
+ topic.author_name = 'Aaron'
+ assert_equal 'Aaron', cloned.author_name
+ end
+ end
+end
diff --git a/activerecord/test/cases/duplication_test.rb b/activerecord/test/cases/duplication_test.rb
index 1ca6e72db0..ecea843bbf 100644
--- a/activerecord/test/cases/duplication_test.rb
+++ b/activerecord/test/cases/duplication_test.rb
@@ -23,31 +23,6 @@ module ActiveRecord
assert_nil duped.id
end
- def test_clone_persisted
- topic = Topic.first
- cloned = topic.clone
- assert topic.persisted?, 'topic persisted'
- assert cloned.persisted?, 'topic persisted'
- assert !cloned.new_record?, 'topic is not new'
- end
-
- def test_clone_keeps_frozen
- topic = Topic.first
- topic.freeze
-
- cloned = topic.clone
- assert cloned.persisted?, 'topic persisted'
- assert !cloned.new_record?, 'topic is not new'
- assert cloned.frozen?, 'topic should be frozen'
- end
-
- def test_clone_is_shallow
- topic = Topic.first
- cloned = topic.clone
- topic.author_name = 'Aaron'
- assert_equal 'Aaron', cloned.author_name
- end
-
def test_dup_with_modified_attributes
topic = Topic.first
topic.author_name = 'Aaron'