summaryrefslogtreecommitdiff
path: root/test/rubygems/test_gem.rb
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2019-10-29 14:34:31 +0900
committerYusuke Endoh <mame@ruby-lang.org>2019-10-29 14:40:26 +0900
commit7bf51ced5571d6180722f2be1b50c048a02b2e70 (patch)
tree772af756f28ecb3136ec4c7e2eb37288a0ee6ad1 /test/rubygems/test_gem.rb
parent79a7fd91208989d180027a9fed63db76b0a08cc1 (diff)
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.
Diffstat (limited to 'test/rubygems/test_gem.rb')
-rw-r--r--test/rubygems/test_gem.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
index 110eef6c7f..23f8249e34 100644
--- a/test/rubygems/test_gem.rb
+++ b/test/rubygems/test_gem.rb
@@ -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|