mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
5d1999547d
Since #29572, test runner will be loaded as minitest's plugin.
Therefore, if specify a value in `Minitest.extensions` before the Minitest
initialization process, the extension will not load and the test runner will
not work.
44eee51ed9/lib/minitest.rb (L86)
Also, load processing of adapter is done before minitest option processing,
so set the adapter in the file so that the `-a` option works.
27 lines
720 B
Ruby
Executable file
27 lines
720 B
Ruby
Executable file
#!/usr/bin/env ruby
|
|
# frozen_string_literal: true
|
|
|
|
adapter_index = ARGV.index("--adapter") || ARGV.index("-a")
|
|
if adapter_index
|
|
ARGV.delete_at(adapter_index)
|
|
ENV["ARCONN"] = ARGV.delete_at(adapter_index).strip
|
|
end
|
|
|
|
COMPONENT_ROOT = File.expand_path("..", __dir__)
|
|
require_relative "../../tools/test"
|
|
|
|
module Minitest
|
|
def self.plugin_active_record_options(opts, options)
|
|
opts.separator ""
|
|
opts.separator "Active Record options:"
|
|
opts.on("-a", "--adapter [ADAPTER]",
|
|
"Run tests using a specific adapter (sqlite3, sqlite3_mem, mysql2, postgresql)") do |adapter|
|
|
ENV["ARCONN"] = adapter.strip
|
|
end
|
|
|
|
opts
|
|
end
|
|
end
|
|
|
|
Minitest.load_plugins
|
|
Minitest.extensions.unshift "active_record"
|