diff options
author | Chris Barton <cbarton@inigral.com> | 2012-09-18 13:15:02 -0700 |
---|---|---|
committer | Chris Barton <cbarton@inigral.com> | 2012-09-18 13:15:02 -0700 |
commit | 4325bec1d46de4a7fbe094ae18e83648532e2ddf (patch) | |
tree | 4b8555f48ee22f38f3f4278e8329ca97f343b7b3 /activerecord/test/cases | |
parent | 29ebec702d0dc5ce2d760f61292460f77207c87e (diff) | |
download | rails-4325bec1d46de4a7fbe094ae18e83648532e2ddf.tar.gz rails-4325bec1d46de4a7fbe094ae18e83648532e2ddf.tar.bz2 rails-4325bec1d46de4a7fbe094ae18e83648532e2ddf.zip |
Making test accurately reflect what is going on in the schema migrations test
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/ar_schema_test.rb | 36 |
1 files changed, 28 insertions, 8 deletions
diff --git a/activerecord/test/cases/ar_schema_test.rb b/activerecord/test/cases/ar_schema_test.rb index 588adc38e3..ee338a3b99 100644 --- a/activerecord/test/cases/ar_schema_test.rb +++ b/activerecord/test/cases/ar_schema_test.rb @@ -11,23 +11,30 @@ if ActiveRecord::Base.connection.supports_migrations? def teardown @connection.drop_table :fruits rescue nil + @connection.drop_table :"_pre_fruits_suf_" rescue nil + @connection.drop_table :"_pre_schema_migrations_suf_" rescue nil end def test_schema_define - ActiveRecord::Schema.define(:version => 7) do - create_table :fruits do |t| - t.column :color, :string - t.column :fruit_size, :string # NOTE: "size" is reserved in Oracle - t.column :texture, :string - t.column :flavor, :string - end - end + perform_schema_define! assert_nothing_raised { @connection.select_all "SELECT * FROM fruits" } assert_nothing_raised { @connection.select_all "SELECT * FROM schema_migrations" } assert_equal 7, ActiveRecord::Migrator::current_version end + def test_schema_define_with_table_prefix_and_suffix + ActiveRecord::Base.table_name_prefix = '_pre_' + ActiveRecord::Base.table_name_suffix = '_suf_' + + perform_schema_define! + + assert_equal 7, ActiveRecord::Migrator::current_version + ensure + ActiveRecord::Base.table_name_prefix = '' + ActiveRecord::Base.table_name_suffix = '' + end + def test_schema_raises_an_error_for_invalid_column_type assert_raise NoMethodError do ActiveRecord::Schema.define(:version => 8) do @@ -39,4 +46,17 @@ if ActiveRecord::Base.connection.supports_migrations? end end + private + + def perform_schema_define! + ActiveRecord::Schema.define(:version => 7) do + create_table :fruits do |t| + t.column :color, :string + t.column :fruit_size, :string # NOTE: "size" is reserved in Oracle + t.column :texture, :string + t.column :flavor, :string + end + end + end + end |