summaryrefslogtreecommitdiff
path: root/test/rubygems
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-05-15 07:02:33 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-05-15 07:02:33 +0000
commit895954ef91c974ceff829e0d06132853e87377ea (patch)
tree7cfebfd41d1fefbd9d1add1369292deddc84ffe4 /test/rubygems
parent51c2feee777797861ce6f843a50f70fecaddd28e (diff)
add information for debugging.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems')
-rw-r--r--test/rubygems/test_gem_gem_runner.rb33
1 files changed, 26 insertions, 7 deletions
diff --git a/test/rubygems/test_gem_gem_runner.rb b/test/rubygems/test_gem_gem_runner.rb
index b5d8581bea..0a1faa404a 100644
--- a/test/rubygems/test_gem_gem_runner.rb
+++ b/test/rubygems/test_gem_gem_runner.rb
@@ -1,17 +1,36 @@
# frozen_string_literal: true
require 'rubygems/test_case'
begin
- require 'rubygems/gem_runner'
-ensure
- if $!
+ gem_home_files = lambda{
if Dir.exist?(ENV["GEM_HOME"])
require "find"
ary = Find.find(ENV["GEM_HOME"]).to_a
- raise <<eom
-GEM_HOME: #{ENV["GEM_HOME"]}
-contant: #{ary.inspect}
-eom
+ else
+ []
end
+ }
+ prev_gem_home = ENV["GEM_HOME"]
+ prev_gem_home_files = gem_home_files.call
+ prev_threads = Thread.list.map{|e| e.inspect}
+
+ require 'rubygems/gem_runner'
+ensure
+ if $!
+ msg = <<eom
+***************
+PREV
+ GEM_HOME: #{prev_gem_home}
+ Files in GEM_HOME: #{prev_gem_home_files.inspect}
+ Threads: #{prev_threads.inspect}
+Current:
+ GEM_HOME: #{ENV["GEM_HOME"]}
+ Files in GEM_HOME: #{gem_home_files.call}
+ Threads: #{Thread.list.map{|e| e.inspect}.inspect}
+Exception: #{$!.message}
+eom
+ p $!.class
+ p $!.message.frozen?
+ raise $!.class, msg, $!.backtrace
end
end