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

50 lines
1.4 KiB
Ruby
Raw Normal View History

######################################################################
# This file is imported from the rubygems project.
# DO NOT make modifications in this repo. They _will_ be reverted!
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
require 'rubygems'
def install_session
path_to_gem = File.join("redist", "session.gem")
begin
Gem::Installer.new(path_to_gem).install
rescue Errno::EACCES => ex
puts
puts "*****************************************************************"
puts "Unable to install Gem 'Session'."
puts "Reason: #{ex.message}"
puts "Try running:"
puts
puts " gem -Li #{path_to_gem}"
puts
puts "with the appropriate admin privileges."
puts "*****************************************************************"
puts
exit
end
gem 'session'
end
begin
require 'session'
rescue LoadError => e
puts
puts "Required Gem 'Session' missing."
puts "We can attempt to install from the RubyGems Distribution,"
puts "but installation may require admin privileges on your system."
puts
print "Install now from RubyGems distribution? [Yn]"
answer = gets
if(answer =~ /^y/i || answer =~ /^[^a-zA-Z0-9]$/) then
install_session
puts
puts "Retry running the functional tests."
exit(0)
else
puts "Test cancelled...quitting"
exit(1)
end
end