1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

test/rubygems/test_gem.rb: early failure when there is /tmp/Gemfile

Some test cases in rubygems assume that /tmp/Gemfile does not exist.
If it does, they fail with very difficult-to-understand message:

```
[ 149/2108] TestGemBundlerVersionFinder#test_bundler_version_with_bundle_update_bundler = 0.00
  1) Failure:
TestGemBundlerVersionFinder#test_bundler_version_with_bundle_update_bundler [/home/mame/work/ruby/test/rubygems/test_gem_bundler_version_finder.rb:38]:
Expected Gem::Version.new("2.0.2") to be nil.
```

I spent one hour to debug this issue.  To prevent the same accident,
this change makes the test suite stop when /tmp/Gemfile explicitly.
This commit is contained in:
Yusuke Endoh 2019-10-29 14:34:31 +09:00
parent 79a7fd9120
commit 7bf51ced55

View file

@ -7,6 +7,10 @@ require 'pathname'
require 'tmpdir'
require 'rbconfig'
if File.exist?(File.join(Dir.tmpdir, "Gemfile"))
raise "rubygems/bundler tests do not work correctly if there is #{ File.join(Dir.tmpdir, "Gemfile") }"
end
# TODO: push this up to test_case.rb once battle tested
$LOAD_PATH.map! do |path|