mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
33fdae0584
`Minitest.plugin_rails_init` sets `Minitest.backtrace_filter` to `Rails.backtrace_cleaner` right before tests are run, overwriting the value set in test_helper.rb. `Rails.backtrace_cleaner` silences backtrace lines that do not start with `Rails.root` followed by e.g. "lib/" or "test/". Thus when `Rails.root` is a subdirectory of the project directory -- for example, when testing a plugin that has a dummy app -- all lines of the backtrace are silenced. This commit adds a fallback such that when all backtrace lines are silenced, the original `Minitest.backtrace_filter` is used instead. Additionally, this commit refactors and expands existing test coverage.
31 lines
1.1 KiB
Ruby
31 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
# Configure Rails Environment
|
|
ENV["RAILS_ENV"] = "test"
|
|
|
|
require_relative "../test/dummy/config/environment"
|
|
ActiveRecord::Migrator.migrations_paths = [File.expand_path("../test/dummy/db/migrate", __dir__)]
|
|
require "rails/test_help"
|
|
|
|
require "rails/test_unit/reporter"
|
|
Rails::TestUnitReporter.executable = "bin/test"
|
|
|
|
# Disable available locale checks to allow to add locale after initialized.
|
|
I18n.enforce_available_locales = false
|
|
|
|
# Load fixtures from the engine
|
|
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
|
|
ActiveSupport::TestCase.fixture_path = File.expand_path("fixtures", __dir__)
|
|
ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
|
|
ActiveSupport::TestCase.file_fixture_path = ActiveSupport::TestCase.fixture_path + "/files"
|
|
ActiveSupport::TestCase.fixtures :all
|
|
end
|
|
|
|
class ActiveSupport::TestCase
|
|
private
|
|
def create_file_blob(filename:, content_type:, metadata: nil)
|
|
ActiveStorage::Blob.create_and_upload! io: file_fixture(filename).open, filename: filename, content_type: content_type, metadata: metadata
|
|
end
|
|
end
|
|
|
|
require_relative "../../tools/test_common"
|