mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
044f9ab7a4
`setup do` creates unnecessary allocations of proc objects in callbacks. This prevents that from happening and results in faster code.
46 lines
1.3 KiB
Ruby
46 lines
1.3 KiB
Ruby
# Make double-sure the RAILS_ENV is not set to production,
|
|
# so fixtures aren't loaded into that environment
|
|
abort("Abort testing: Your Rails environment is running in production mode!") if Rails.env.production?
|
|
|
|
require 'active_support/testing/autorun'
|
|
require 'active_support/test_case'
|
|
require 'action_controller'
|
|
require 'action_controller/test_case'
|
|
require 'action_dispatch/testing/integration'
|
|
require 'rails/generators/test_case'
|
|
|
|
# Config Rails backtrace in tests.
|
|
require 'rails/backtrace_cleaner'
|
|
if ENV["BACKTRACE"].nil?
|
|
Minitest.backtrace_filter = Rails.backtrace_cleaner
|
|
end
|
|
|
|
if defined?(ActiveRecord::Base)
|
|
ActiveRecord::Migration.maintain_test_schema!
|
|
|
|
class ActiveSupport::TestCase
|
|
include ActiveRecord::TestFixtures
|
|
self.fixture_path = "#{Rails.root}/test/fixtures/"
|
|
self.file_fixture_path = self.fixture_path + "files"
|
|
end
|
|
|
|
ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
|
|
|
|
def create_fixtures(*fixture_set_names, &block)
|
|
FixtureSet.create_fixtures(ActiveSupport::TestCase.fixture_path, fixture_set_names, {}, &block)
|
|
end
|
|
end
|
|
|
|
class ActionController::TestCase
|
|
def setup
|
|
@routes = Rails.application.routes
|
|
super
|
|
end
|
|
end
|
|
|
|
class ActionDispatch::IntegrationTest
|
|
def setup
|
|
@routes = Rails.application.routes
|
|
super
|
|
end
|
|
end
|