aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/base_test.rb
diff options
context:
space:
mode:
authorkennyj <kennyj@gmail.com>2012-03-03 20:32:46 +0900
committerkennyj <kennyj@gmail.com>2012-03-04 22:22:27 +0900
commit640f6c201d59cd7fc16943154372d4ef754f33f4 (patch)
tree78409fdc5bc9fc118d50e2742648f36227caeab4 /activerecord/test/cases/base_test.rb
parent223549f420583e8cfaa280542da679d6c6045b44 (diff)
downloadrails-640f6c201d59cd7fc16943154372d4ef754f33f4.tar.gz
rails-640f6c201d59cd7fc16943154372d4ef754f33f4.tar.bz2
rails-640f6c201d59cd7fc16943154372d4ef754f33f4.zip
Fix GH #4674. Reset column information and sequence name when setting table_name.
Diffstat (limited to 'activerecord/test/cases/base_test.rb')
-rw-r--r--activerecord/test/cases/base_test.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 698c3d0cb1..d810704418 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1479,6 +1479,19 @@ class BasicsTest < ActiveRecord::TestCase
end
end
+ def test_clear_cash_when_setting_table_name
+ Joke.table_name = "cold_jokes"
+ before_columns = Joke.columns
+ before_seq = Joke.sequence_name
+
+ Joke.table_name = "funny_jokes"
+ after_columns = Joke.columns
+ after_seq = Joke.sequence_name
+
+ assert_not_equal before_columns, after_columns
+ assert_not_equal before_seq, after_seq unless before_seq.blank? && after_seq.blank?
+ end
+
def test_set_table_name_symbol_converted_to_string
Joke.table_name = :cold_jokes
assert_equal 'cold_jokes', Joke.table_name