aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/base_test.rb
diff options
context:
space:
mode:
authorJon Leighton <j@jonathanleighton.com>2011-11-29 18:30:22 +0000
committerJon Leighton <j@jonathanleighton.com>2011-11-29 20:13:37 +0000
commit4aad289428bf46cf4a13f159819f1993f8fc978f (patch)
tree51f2312f03def1fc4ce13af8684b6c01c8caa8be /activerecord/test/cases/base_test.rb
parente51ecfaaa32fde3ada4583ade4328546fef1e421 (diff)
downloadrails-4aad289428bf46cf4a13f159819f1993f8fc978f.tar.gz
rails-4aad289428bf46cf4a13f159819f1993f8fc978f.tar.bz2
rails-4aad289428bf46cf4a13f159819f1993f8fc978f.zip
Make sure the original_foo accessor still works (but deprecated) if we are using self.foo=
Diffstat (limited to 'activerecord/test/cases/base_test.rb')
-rw-r--r--activerecord/test/cases/base_test.rb62
1 files changed, 55 insertions, 7 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 3a84e40f57..062cac7d52 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1476,6 +1476,24 @@ class BasicsTest < ActiveRecord::TestCase
assert_equal "foosks", k.table_name
end
+ def test_original_table_name
+ k = Class.new(ActiveRecord::Base)
+ def k.name; "Foo"; end
+ k.table_name = "bar"
+
+ assert_deprecated do
+ assert_equal "foos", k.original_table_name
+ end
+
+ k = Class.new(ActiveRecord::Base)
+ k.table_name = "omg"
+ k.table_name = "wtf"
+
+ assert_deprecated do
+ assert_equal "omg", k.original_table_name
+ end
+ end
+
def test_set_primary_key_with_value
k = Class.new( ActiveRecord::Base )
k.primary_key = "foo"
@@ -1510,6 +1528,16 @@ class BasicsTest < ActiveRecord::TestCase
assert_equal "type_id", k.inheritance_column
end
+ def test_original_inheritance_column
+ k = Class.new(ActiveRecord::Base)
+ def k.name; "Foo"; end
+ k.inheritance_column = "omg"
+
+ assert_deprecated do
+ assert_equal "type", k.original_inheritance_column
+ end
+ end
+
def test_set_sequence_name_with_value
k = Class.new( ActiveRecord::Base )
k.sequence_name = "foo"
@@ -1525,14 +1553,34 @@ class BasicsTest < ActiveRecord::TestCase
k = Class.new( ActiveRecord::Base )
k.table_name = "projects"
orig_name = k.sequence_name
+ return skip "sequences not supported by db" unless orig_name
- if orig_name
- assert_deprecated do
- k.set_sequence_name { original_sequence_name + "_lol" }
- end
- assert_equal orig_name + "_lol", k.sequence_name
- else
- skip "sequences not supported by db"
+ assert_deprecated do
+ k.set_sequence_name { original_sequence_name + "_lol" }
+ end
+ assert_equal orig_name + "_lol", k.sequence_name
+ end
+
+ def test_original_sequence_name
+ k = Class.new(ActiveRecord::Base)
+ k.table_name = "projects"
+ orig_name = k.sequence_name
+ return skip "sequences not supported by db" unless orig_name
+
+ k = Class.new(ActiveRecord::Base)
+ k.table_name = "projects"
+ k.sequence_name = "omg"
+
+ assert_deprecated do
+ assert_equal orig_name, k.original_sequence_name
+ end
+
+ k = Class.new(ActiveRecord::Base)
+ k.table_name = "projects"
+ k.sequence_name = "omg"
+ k.sequence_name = "wtf"
+ assert_deprecated do
+ assert_equal "omg", k.original_sequence_name
end
end