aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/test_help.rb
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails/test_help.rb')
-rw-r--r--railties/lib/rails/test_help.rb43
1 files changed, 43 insertions, 0 deletions
diff --git a/railties/lib/rails/test_help.rb b/railties/lib/rails/test_help.rb
new file mode 100644
index 0000000000..c837fadb40
--- /dev/null
+++ b/railties/lib/rails/test_help.rb
@@ -0,0 +1,43 @@
+# 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/"
+ 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
+ setup do
+ @routes = Rails.application.routes
+ end
+end
+
+class ActionDispatch::IntegrationTest
+ setup do
+ @routes = Rails.application.routes
+ end
+end