diff options
author | kennyj <kennyj@gmail.com> | 2012-01-10 03:09:45 +0900 |
---|---|---|
committer | kennyj <kennyj@gmail.com> | 2012-01-10 19:59:54 +0900 |
commit | 211dcdeaa922c74ac20d274308fb5d41ad490194 (patch) | |
tree | a186e82df49bb66c44f65d191725e7a626b276c4 /activerecord/test | |
parent | c763b03d1544039a1cc5ade21d33d097d550bb6c (diff) | |
download | rails-211dcdeaa922c74ac20d274308fb5d41ad490194.tar.gz rails-211dcdeaa922c74ac20d274308fb5d41ad490194.tar.bz2 rails-211dcdeaa922c74ac20d274308fb5d41ad490194.zip |
Fix GH #4259. We must remove table_name_prefix and table_name_suffix, when we execute schema dumper.
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/cases/schema_dumper_test.rb | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/activerecord/test/cases/schema_dumper_test.rb b/activerecord/test/cases/schema_dumper_test.rb index 724632489b..791e2dc975 100644 --- a/activerecord/test/cases/schema_dumper_test.rb +++ b/activerecord/test/cases/schema_dumper_test.rb @@ -242,4 +242,36 @@ class SchemaDumperTest < ActiveRecord::TestCase output = standard_dump assert_match %r{create_table "subscribers", :id => false}, output end + + class CreateDogMigration < ActiveRecord::Migration + def up + create_table("dogs") do |t| + t.column :name, :string + end + add_index "dogs", [:name] + end + def down + drop_table("dogs") + end + end + + def test_schema_dump_with_table_name_prefix_and_suffix + original, $stdout = $stdout, StringIO.new + ActiveRecord::Base.table_name_prefix = 'foo_' + ActiveRecord::Base.table_name_suffix = '_bar' + + migration = CreateDogMigration.new + migration.migrate(:up) + + output = standard_dump + assert_no_match %r{create_table "foo_.+_bar"}, output + assert_no_match %r{create_index "foo_.+_bar"}, output + assert_no_match %r{create_table "schema_migrations"}, output + ensure + migration.migrate(:down) + + ActiveRecord::Base.table_name_suffix = ActiveRecord::Base.table_name_prefix = '' + $stdout = original + end + end |