diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2021-01-24 18:26:50 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2021-01-24 19:30:02 +0900 |
commit | 80bad36989bbc4ad6167fe9670327f95b78089ce (patch) | |
tree | e5bb4b609d4540248b58259ca2d9dc25ab90e9db | |
parent | 52ebaf718e6a78297ceb0dff49815eeed28eae45 (diff) |
Remove temporary directory properly
For each `make check`, rubygems test makes "tmp" directory and
some "gem_generate_index..." directories remain there.
* Do not create a (fixed name) directory in the current working
directory
* Should remove its own temporary directory
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/4115
-rw-r--r-- | lib/rubygems/test_case.rb | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/lib/rubygems/test_case.rb b/lib/rubygems/test_case.rb index 83a3c446a7..2fbdd4fd88 100644 --- a/lib/rubygems/test_case.rb +++ b/lib/rubygems/test_case.rb @@ -301,9 +301,6 @@ class Gem::TestCase < Minitest::Test def setup @orig_env = ENV.to_hash - @tmp = File.expand_path("tmp") - - FileUtils.mkdir_p @tmp ENV['GEM_VENDOR'] = nil ENV['GEMRC'] = nil @@ -312,7 +309,6 @@ class Gem::TestCase < Minitest::Test ENV['XDG_DATA_HOME'] = nil ENV['SOURCE_DATE_EPOCH'] = nil ENV['BUNDLER_VERSION'] = nil - ENV["TMPDIR"] = @tmp @current_dir = Dir.pwd @fetcher = nil @@ -323,13 +319,10 @@ class Gem::TestCase < Minitest::Test # capture output Gem::DefaultUserInteraction.ui = Gem::MockGemUi.new - tmpdir = File.realpath Dir.tmpdir + tmpdir = File.realpath(Dir.mktmpdir("test_rubygems_")) tmpdir.tap(&Gem::UNTAINT) - - @tempdir = File.join(tmpdir, "test_rubygems_#{$$}") - @tempdir.tap(&Gem::UNTAINT) - - FileUtils.mkdir_p @tempdir + ENV["TMPDIR"] = @tmp = File.dirname(tmpdir) + @tempdir = tmpdir @orig_SYSTEM_WIDE_CONFIG_FILE = Gem::ConfigFile::SYSTEM_WIDE_CONFIG_FILE Gem::ConfigFile.send :remove_const, :SYSTEM_WIDE_CONFIG_FILE |