mirror of
https://github.com/ruby/ruby.git
synced 2026-01-29 13:34:17 +00:00
test/runner.rb and tool/lib/test/unit/parallel.rb must use the same settings. However, some settings were copied and pasted, while some were added only to test/runner.rb. This changeset creates tool/test/init.rb for all settings of test-unit, which is loaded not only by test/runner.rb but also tool/lib/test/unit/parallel.rb. Background: the GEM_HOME environment variable was removed in test/runner.rb, which prohibit `require "rake"` (note that rake is a bundled gem). However the parallel mode didn't refrect this setting, i.e., `require "rake"` was allowed. This leads to an inconsistency, which actually affected a test test defines s test class *only when* `require "rake"` is successful. (test/rubygems/test_gem_package_task.rb) https://github.com/ruby/ruby/actions/runs/6807729617/job/18511055636#step:8:1714 ``` /home/runner/work/ruby/ruby/src/tool/lib/test/unit.rb:729:in `const_get': uninitialized constant TestGemPackageTask (NameError) suites.map! {|r| ::Object.const_get(r[:testcase])} ^^^^^^^^^^ ```
19 lines
591 B
Ruby
19 lines
591 B
Ruby
# This file includes the settings for "make test-all".
|
|
# Note that this file is loaded not only by test/runner.rb but also by tool/lib/test/unit/parallel.rb.
|
|
|
|
ENV["GEM_SKIP"] = ENV["GEM_HOME"] = ENV["GEM_PATH"] = "".freeze
|
|
ENV.delete("RUBY_CODESIGN")
|
|
|
|
Warning[:experimental] = false
|
|
|
|
$LOAD_PATH.unshift File.expand_path("../lib", __dir__)
|
|
|
|
require 'test/unit'
|
|
|
|
require "profile_test_all" if ENV.key?('RUBY_TEST_ALL_PROFILE')
|
|
require "tracepointchecker"
|
|
require "zombie_hunter"
|
|
require "iseq_loader_checker"
|
|
require "gc_checker"
|
|
require_relative "../test-coverage.rb" if ENV.key?('COVERAGE')
|