diff options
author | Jon Leighton <j@jonathanleighton.com> | 2013-12-29 11:05:04 +0000 |
---|---|---|
committer | Jon Leighton <j@jonathanleighton.com> | 2014-01-02 13:49:00 +0000 |
commit | ff7ab3bc78abc3e8439a57ef7d755c5aa5b069f4 (patch) | |
tree | 5ad6aed8ee454c320967d767229debde268da2e2 /railties/lib | |
parent | a1d0c0fa3d8ca97edc8f2a1d6ba96af19221dbad (diff) | |
download | rails-ff7ab3bc78abc3e8439a57ef7d755c5aa5b069f4.tar.gz rails-ff7ab3bc78abc3e8439a57ef7d755c5aa5b069f4.tar.bz2 rails-ff7ab3bc78abc3e8439a57ef7d755c5aa5b069f4.zip |
Automatically maintain test database schema
* Move check from generated helper to test_help.rb, so that all
applications can benefit
* Rather than just raising when the test schema has pending migrations,
try to load in the schema and only raise if there are pending
migrations afterwards
* Opt out of the check by setting
config.active_record.maintain_test_schema = false
* Deprecate db:test:* tasks. The test helper is now fully responsible
for maintaining the test schema, so we don't need rake tasks for this.
This is also a speed improvement since we're no longer reloading the
test database on every call to "rake test".
Diffstat (limited to 'railties/lib')
-rw-r--r-- | railties/lib/rails/generators/rails/app/templates/test/test_helper.rb | 2 | ||||
-rw-r--r-- | railties/lib/rails/test_help.rb | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/railties/lib/rails/generators/rails/app/templates/test/test_helper.rb b/railties/lib/rails/generators/rails/app/templates/test/test_helper.rb index 4fd060341e..4ade1a0bdc 100644 --- a/railties/lib/rails/generators/rails/app/templates/test/test_helper.rb +++ b/railties/lib/rails/generators/rails/app/templates/test/test_helper.rb @@ -4,8 +4,6 @@ require 'rails/test_help' class ActiveSupport::TestCase <% unless options[:skip_active_record] -%> - ActiveRecord::Migration.check_pending! - # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order. # # Note: You'll currently still have to declare fixtures explicitly in integration tests diff --git a/railties/lib/rails/test_help.rb b/railties/lib/rails/test_help.rb index 7765c9ae86..2e6356343d 100644 --- a/railties/lib/rails/test_help.rb +++ b/railties/lib/rails/test_help.rb @@ -15,6 +15,8 @@ if ENV["BACKTRACE"].nil? end if defined?(ActiveRecord::Base) + ActiveRecord::Migration.maintain_test_schema! + class ActiveSupport::TestCase include ActiveRecord::TestFixtures self.fixture_path = "#{Rails.root}/test/fixtures/" |