Set the Rails environment from an environment variable
Option parsing happens too late to have any impact on the Rails environment. Rails accesses the environment name and memoizes it too early in the boot process for a commandline option to have any impact on the database connection, so we'll change this test to set the environment from an environment variable (and ensure it still works when running tests with `ruby`)
This commit is contained in:
parent
cd0283ef29
commit
a50b8ea350
|
@ -12,11 +12,8 @@ module Rails
|
|||
|
||||
class << self
|
||||
def attach_before_load_options(opts)
|
||||
ENV["RAILS_ENV"] = "test"
|
||||
opts.on("--warnings", "-w", "Run with Ruby warnings enabled") {}
|
||||
opts.on("-e", "--environment ENV", "Run tests in the ENV environment") { |e|
|
||||
ENV["RAILS_ENV"] = e
|
||||
}
|
||||
opts.on("-e", "--environment ENV", "Run tests in the ENV environment") {}
|
||||
end
|
||||
|
||||
def parse_options(argv)
|
||||
|
|
|
@ -593,7 +593,7 @@ module ApplicationTests
|
|||
|
||||
file = create_test_for_env("development")
|
||||
results = Dir.chdir(app_path) {
|
||||
`ruby -Ilib:test #{file} -e development`.each_line.map { |line| JSON.parse line }
|
||||
`RAILS_ENV=development ruby -Ilib:test #{file}`.each_line.map { |line| JSON.parse line }
|
||||
}
|
||||
assert_equal 1, results.length
|
||||
failures = results.first["failures"]
|
||||
|
|
Loading…
Reference in New Issue