summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/rubygems/gem_installer_test_case.rb103
-rw-r--r--test/rubygems/gem_package_tar_test_case.rb140
-rw-r--r--test/rubygems/gemutilities.rb629
-rw-r--r--test/rubygems/mockgemui.rb65
-rw-r--r--test/rubygems/simple_gem.rb4
-rw-r--r--test/rubygems/test_config.rb4
-rw-r--r--test/rubygems/test_gem.rb4
-rw-r--r--test/rubygems/test_gem_builder.rb4
-rw-r--r--test/rubygems/test_gem_command.rb6
-rw-r--r--test/rubygems/test_gem_command_manager.rb12
-rw-r--r--test/rubygems/test_gem_commands_build_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_cert_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_check_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_contents_command.rb6
-rw-r--r--test/rubygems/test_gem_commands_dependency_command.rb8
-rw-r--r--test/rubygems/test_gem_commands_environment_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_fetch_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_generate_index_command.rb6
-rw-r--r--test/rubygems/test_gem_commands_install_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_list_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_lock_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_outdated_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_owner_command.rb10
-rw-r--r--test/rubygems/test_gem_commands_pristine_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_push_command.rb6
-rw-r--r--test/rubygems/test_gem_commands_query_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_server_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_sources_command.rb8
-rw-r--r--test/rubygems/test_gem_commands_specification_command.rb6
-rw-r--r--test/rubygems/test_gem_commands_stale_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_uninstall_command.rb26
-rw-r--r--test/rubygems/test_gem_commands_unpack_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_update_command.rb4
-rw-r--r--test/rubygems/test_gem_commands_which_command.rb6
-rw-r--r--test/rubygems/test_gem_config_file.rb4
-rw-r--r--test/rubygems/test_gem_dependency.rb6
-rw-r--r--test/rubygems/test_gem_dependency_installer.rb4
-rw-r--r--test/rubygems/test_gem_dependency_list.rb6
-rw-r--r--test/rubygems/test_gem_doc_manager.rb4
-rw-r--r--test/rubygems/test_gem_ext_configure_builder.rb4
-rw-r--r--test/rubygems/test_gem_ext_ext_conf_builder.rb4
-rw-r--r--test/rubygems/test_gem_ext_rake_builder.rb4
-rw-r--r--test/rubygems/test_gem_format.rb4
-rw-r--r--test/rubygems/test_gem_gem_path_searcher.rb4
-rw-r--r--test/rubygems/test_gem_gem_runner.rb4
-rw-r--r--test/rubygems/test_gem_gemcutter_utilities.rb8
-rw-r--r--test/rubygems/test_gem_indexer.rb8
-rw-r--r--test/rubygems/test_gem_install_update_options.rb4
-rw-r--r--test/rubygems/test_gem_installer.rb11
-rw-r--r--test/rubygems/test_gem_local_remote_options.rb4
-rw-r--r--test/rubygems/test_gem_package_tar_header.rb4
-rw-r--r--test/rubygems/test_gem_package_tar_input.rb4
-rw-r--r--test/rubygems/test_gem_package_tar_output.rb4
-rw-r--r--test/rubygems/test_gem_package_tar_reader.rb4
-rw-r--r--test/rubygems/test_gem_package_tar_reader_entry.rb4
-rw-r--r--test/rubygems/test_gem_package_tar_writer.rb4
-rw-r--r--test/rubygems/test_gem_package_task.rb4
-rw-r--r--test/rubygems/test_gem_platform.rb4
-rw-r--r--test/rubygems/test_gem_remote_fetcher.rb6
-rw-r--r--test/rubygems/test_gem_requirement.rb4
-rw-r--r--test/rubygems/test_gem_security.rb4
-rw-r--r--test/rubygems/test_gem_server.rb4
-rw-r--r--test/rubygems/test_gem_source_index.rb4
-rw-r--r--test/rubygems/test_gem_spec_fetcher.rb4
-rw-r--r--test/rubygems/test_gem_specification.rb8
-rw-r--r--test/rubygems/test_gem_stream_ui.rb22
-rw-r--r--test/rubygems/test_gem_text.rb4
-rw-r--r--test/rubygems/test_gem_uninstaller.rb27
-rw-r--r--test/rubygems/test_gem_validator.rb4
-rw-r--r--test/rubygems/test_gem_version.rb4
-rw-r--r--test/rubygems/test_gem_version_option.rb4
-rw-r--r--test/rubygems/test_kernel.rb6
72 files changed, 212 insertions, 1121 deletions
diff --git a/test/rubygems/gem_installer_test_case.rb b/test/rubygems/gem_installer_test_case.rb
deleted file mode 100644
index 6bf9687e86..0000000000
--- a/test/rubygems/gem_installer_test_case.rb
+++ /dev/null
@@ -1,103 +0,0 @@
-######################################################################
-# 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 "test/rubygems/gemutilities"
-require 'rubygems/installer'
-
-class Gem::Installer
- attr_accessor :gem_dir
-
- attr_writer :format
- attr_writer :gem_home
- attr_writer :env_shebang
- attr_writer :ignore_dependencies
- attr_writer :format_executable
- attr_writer :security_policy
- attr_writer :spec
- attr_writer :wrappers
-end
-
-class GemInstallerTestCase < RubyGemTestCase
-
- def setup
- super
-
- @spec = quick_gem 'a'
- @gem = File.join @tempdir, @spec.file_name
-
- @installer = util_installer @spec, @gem, @gemhome
-
- @user_spec = quick_gem 'b'
- @user_gem = File.join @tempdir, @user_spec.file_name
-
- @user_installer = util_installer @user_spec, @user_gem, Gem.user_dir
- @user_installer.gem_dir = File.join(Gem.user_dir, 'gems',
- @user_spec.full_name)
- end
-
- def util_gem_bindir(version = '2')
- File.join util_gem_dir(version), "bin"
- end
-
- def util_gem_dir(version = '2')
- File.join @gemhome, "gems", "a-#{version}" # HACK
- end
-
- def util_inst_bindir
- File.join @gemhome, "bin"
- end
-
- def util_make_exec(version = '2', shebang = "#!/usr/bin/ruby")
- @spec.executables = ["my_exec"]
-
- FileUtils.mkdir_p util_gem_bindir(version)
- exec_path = File.join util_gem_bindir(version), "my_exec"
- File.open exec_path, 'w' do |f|
- f.puts shebang
- end
- end
-
- def util_setup_gem(ui = @ui) # HACK fix use_ui to make this automatic
- @spec.files = File.join('lib', 'code.rb')
- @spec.executables << 'executable'
- @spec.extensions << File.join('ext', 'a', 'mkrf_conf.rb')
-
- Dir.chdir @tempdir do
- FileUtils.mkdir_p 'bin'
- FileUtils.mkdir_p 'lib'
- FileUtils.mkdir_p File.join('ext', 'a')
- File.open File.join('bin', 'executable'), 'w' do |f| f.puts '1' end
- File.open File.join('lib', 'code.rb'), 'w' do |f| f.puts '1' end
- File.open File.join('ext', 'a', 'mkrf_conf.rb'), 'w' do |f|
- f << <<-EOF
- File.open 'Rakefile', 'w' do |rf| rf.puts "task :default" end
- EOF
- end
-
- use_ui ui do
- FileUtils.rm @gem
- Gem::Builder.new(@spec).build
- end
- end
-
- @installer = Gem::Installer.new @gem
- end
-
- def util_installer(spec, gem_path, gem_home)
- util_build_gem spec
- FileUtils.mv File.join(@gemhome, 'cache', spec.file_name),
- @tempdir
-
- installer = Gem::Installer.new gem_path
- installer.gem_dir = util_gem_dir
- installer.gem_home = gem_home
- installer.spec = spec
-
- installer
- end
-
-end
-
diff --git a/test/rubygems/gem_package_tar_test_case.rb b/test/rubygems/gem_package_tar_test_case.rb
deleted file mode 100644
index 572c6b8a02..0000000000
--- a/test/rubygems/gem_package_tar_test_case.rb
+++ /dev/null
@@ -1,140 +0,0 @@
-######################################################################
-# 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 "test/rubygems/gemutilities"
-require 'rubygems/package'
-
-class TarTestCase < RubyGemTestCase
-
- def ASCIIZ(str, length)
- str + "\0" * (length - str.length)
- end
-
- def SP(s)
- s + " "
- end
-
- def SP_Z(s)
- s + " \0"
- end
-
- def Z(s)
- s + "\0"
- end
-
- def assert_headers_equal(expected, actual)
- expected = expected.to_s unless String === expected
- actual = actual.to_s unless String === actual
-
- fields = %w[
- name 100
- mode 8
- uid 8
- gid 8
- size 12
- mtime 12
- checksum 8
- typeflag 1
- linkname 100
- magic 6
- version 2
- uname 32
- gname 32
- devmajor 8
- devminor 8
- prefix 155
- ]
-
- offset = 0
-
- until fields.empty? do
- name = fields.shift
- length = fields.shift.to_i
-
- if name == "checksum" then
- chksum_off = offset
- offset += length
- next
- end
-
- assert_equal expected[offset, length], actual[offset, length],
- "Field #{name} of the tar header differs."
-
- offset += length
- end
-
- assert_equal expected[chksum_off, 8], actual[chksum_off, 8]
- end
-
- def calc_checksum(header)
- sum = header.unpack("C*").inject{|s,a| s + a}
- SP(Z(to_oct(sum, 6)))
- end
-
- def header(type, fname, dname, length, mode, checksum = nil)
- checksum ||= " " * 8
-
- arr = [ # struct tarfile_entry_posix
- ASCIIZ(fname, 100), # char name[100]; ASCII + (Z unless filled)
- Z(to_oct(mode, 7)), # char mode[8]; 0 padded, octal null
- Z(to_oct(0, 7)), # char uid[8]; ditto
- Z(to_oct(0, 7)), # char gid[8]; ditto
- Z(to_oct(length, 11)), # char size[12]; 0 padded, octal, null
- Z(to_oct(0, 11)), # char mtime[12]; 0 padded, octal, null
- checksum, # char checksum[8]; 0 padded, octal, null, space
- type, # char typeflag[1]; file: "0" dir: "5"
- "\0" * 100, # char linkname[100]; ASCII + (Z unless filled)
- "ustar\0", # char magic[6]; "ustar\0"
- "00", # char version[2]; "00"
- ASCIIZ("wheel", 32), # char uname[32]; ASCIIZ
- ASCIIZ("wheel", 32), # char gname[32]; ASCIIZ
- Z(to_oct(0, 7)), # char devmajor[8]; 0 padded, octal, null
- Z(to_oct(0, 7)), # char devminor[8]; 0 padded, octal, null
- ASCIIZ(dname, 155) # char prefix[155]; ASCII + (Z unless filled)
- ]
-
- format = "C100C8C8C8C12C12C8CC100C6C2C32C32C8C8C155"
- h = if RUBY_VERSION >= "1.9" then
- arr.join
- else
- arr = arr.join("").split(//).map{|x| x[0]}
- arr.pack format
- end
- ret = h + "\0" * (512 - h.size)
- assert_equal(512, ret.size)
- ret
- end
-
- def tar_dir_header(name, prefix, mode)
- h = header("5", name, prefix, 0, mode)
- checksum = calc_checksum(h)
- header("5", name, prefix, 0, mode, checksum)
- end
-
- def tar_file_header(fname, dname, mode, length)
- h = header("0", fname, dname, length, mode)
- checksum = calc_checksum(h)
- header("0", fname, dname, length, mode, checksum)
- end
-
- def to_oct(n, pad_size)
- "%0#{pad_size}o" % n
- end
-
- def util_entry(tar)
- io = TempIO.new tar
-
- header = Gem::Package::TarHeader.from io
-
- Gem::Package::TarReader::Entry.new header, io
- end
-
- def util_dir_entry
- util_entry tar_dir_header("foo", "bar", 0)
- end
-
-end
-
diff --git a/test/rubygems/gemutilities.rb b/test/rubygems/gemutilities.rb
deleted file mode 100644
index 9c94a128d0..0000000000
--- a/test/rubygems/gemutilities.rb
+++ /dev/null
@@ -1,629 +0,0 @@
-######################################################################
-# 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.
-######################################################################
-
-at_exit { $SAFE = 1 }
-
-# $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
-
-if defined? Gem::QuickLoader
- Gem::QuickLoader.load_full_rubygems_library
-else
- require 'rubygems'
-end
-require 'fileutils'
-require 'minitest/autorun'
-require 'tmpdir'
-require 'uri'
-require 'rubygems/package'
-require 'rubygems/test_utilities'
-require 'pp'
-require 'yaml'
-require 'zlib'
-
-begin
- YAML::ENGINE.yamler = 'psych'
-rescue LoadError
-end if YAML.const_defined? :ENGINE
-
-begin
- gem 'rdoc'
-rescue Gem::LoadError
-end
-
-require 'rdoc/rdoc'
-
-require "test/rubygems/mockgemui"
-
-module Gem
- def self.searcher=(searcher)
- @searcher = searcher
- end
-
- def self.source_index=(si)
- @@source_index = si
- end
-
- def self.win_platform=(val)
- @@win_platform = val
- end
-
- def self.ruby= ruby
- @ruby = ruby
- end
-
- module DefaultUserInteraction
- @ui = MockGemUi.new
- end
-end
-
-class RubyGemTestCase < MiniTest::Unit::TestCase
-
- include Gem::DefaultUserInteraction
-
- undef_method :default_test if instance_methods.include? 'default_test' or
- instance_methods.include? :default_test
-
- def setup
- super
-
- @orig_gem_home = ENV['GEM_HOME']
- @orig_gem_path = ENV['GEM_PATH']
-
- @ui = MockGemUi.new
- tmpdir = nil
- Dir.chdir Dir.tmpdir do tmpdir = Dir.pwd end # HACK OSX /private/tmp
- if ENV['KEEP_FILES'] then
- @tempdir = File.join tmpdir, "test_rubygems_#{$$}.#{Time.now.to_i}"
- else
- @tempdir = File.join tmpdir, "test_rubygems_#{$$}"
- end
- @tempdir.untaint
- @gemhome = File.join @tempdir, 'gemhome'
- @userhome = File.join @tempdir, 'userhome'
-
- Gem.ensure_gem_subdirectories @gemhome
-
- @orig_ruby = if ruby = ENV['RUBY'] then
- Gem.class_eval { ruby, @ruby = @ruby, ruby }
- ruby
- end
-
- Gem.ensure_gem_subdirectories @gemhome
-
- @orig_ENV_HOME = ENV['HOME']
- ENV['HOME'] = @userhome
- Gem.instance_variable_set :@user_home, nil
-
- FileUtils.mkdir_p @gemhome
- FileUtils.mkdir_p @userhome
-
- Gem.use_paths(@gemhome)
- Gem.loaded_specs.clear
-
- Gem.configuration.verbose = true
- Gem.configuration.update_sources = true
-
- @gem_repo = "http://gems.example.com/"
- @uri = URI.parse @gem_repo
- Gem.sources.replace [@gem_repo]
-
- Gem::SpecFetcher.fetcher = nil
-
- @orig_BASERUBY = Gem::ConfigMap[:BASERUBY]
- Gem::ConfigMap[:BASERUBY] = Gem::ConfigMap[:ruby_install_name]
-
- @orig_arch = Gem::ConfigMap[:arch]
-
- if win_platform?
- util_set_arch 'i386-mswin32'
- else
- util_set_arch 'i686-darwin8.10.1'
- end
-
- @marshal_version = "#{Marshal::MAJOR_VERSION}.#{Marshal::MINOR_VERSION}"
-
- @private_key = File.expand_path File.join(File.dirname(__FILE__),
- 'private_key.pem')
- @public_cert = File.expand_path File.join(File.dirname(__FILE__),
- 'public_cert.pem')
-
- Gem.post_build_hooks.clear
- Gem.post_install_hooks.clear
- Gem.post_uninstall_hooks.clear
- Gem.pre_install_hooks.clear
- Gem.pre_uninstall_hooks.clear
-
- Gem.post_build do |installer|
- @post_build_hook_arg = installer
- true
- end
-
- Gem.post_install do |installer|
- @post_install_hook_arg = installer
- end
-
- Gem.post_uninstall do |uninstaller|
- @post_uninstall_hook_arg = uninstaller
- end
-
- Gem.pre_install do |installer|
- @pre_install_hook_arg = installer
- true
- end
-
- Gem.pre_uninstall do |uninstaller|
- @pre_uninstall_hook_arg = uninstaller
- end
-
- @orig_LOAD_PATH = $LOAD_PATH.dup
- end
-
- def teardown
- $LOAD_PATH.replace @orig_LOAD_PATH
-
- Gem::ConfigMap[:BASERUBY] = @orig_BASERUBY
- Gem::ConfigMap[:arch] = @orig_arch
-
- if defined? Gem::RemoteFetcher then
- Gem::RemoteFetcher.fetcher = nil
- end
-
- FileUtils.rm_rf @tempdir unless ENV['KEEP_FILES']
-
- ENV['GEM_HOME'] = @orig_gem_home
- ENV['GEM_PATH'] = @orig_gem_path
-
- Gem.clear_paths
-
- _ = @orig_ruby
- Gem.class_eval { @ruby = _ } if _
-
- if @orig_ENV_HOME then
- ENV['HOME'] = @orig_ENV_HOME
- else
- ENV.delete 'HOME'
- end
- end
-
- def install_gem gem
- require 'rubygems/installer'
-
- use_ui MockGemUi.new do
- Dir.chdir @tempdir do
- Gem::Builder.new(gem).build
- end
- end
-
- gem = File.join(@tempdir, gem.file_name).untaint
- Gem::Installer.new(gem, :wrappers => true).install
- end
-
- def uninstall_gem gem
- require 'rubygems/uninstaller'
-
- uninstaller = Gem::Uninstaller.new gem.name, :executables => true,
- :user_install => true
- uninstaller.uninstall
- end
-
- def mu_pp(obj)
- s = ''
- s = PP.pp obj, s
- s = s.force_encoding(Encoding.default_external) if defined? Encoding
- s.chomp
- end
-
- def prep_cache_files(lc)
- @usr_si ||= Gem::SourceIndex.new
- @usr_sice ||= Gem::SourceInfoCacheEntry.new @usr_si, 0
-
- @sys_si ||= Gem::SourceIndex.new
- @sys_sice ||= Gem::SourceInfoCacheEntry.new @sys_si, 0
-
- latest_si = Gem::SourceIndex.new
- latest_si.add_specs(*@sys_si.latest_specs)
- latest_sys_sice = Gem::SourceInfoCacheEntry.new latest_si, 0
-
- latest_si = Gem::SourceIndex.new
- latest_si.add_specs(*@usr_si.latest_specs)
- latest_usr_sice = Gem::SourceInfoCacheEntry.new latest_si, 0
-
- [ [lc.system_cache_file, @sys_sice],
- [lc.latest_system_cache_file, latest_sys_sice],
- [lc.user_cache_file, @usr_sice],
- [lc.latest_user_cache_file, latest_usr_sice],
- ].each do |filename, data|
- FileUtils.mkdir_p File.dirname(filename).untaint
-
- open filename.dup.untaint, 'wb' do |f|
- f.write Marshal.dump({ @gem_repo => data })
- end
- end
- end
-
- def read_cache(path)
- open path.dup.untaint, 'rb' do |io|
- Marshal.load io.read
- end
- end
-
- def read_binary(path)
- Gem.read_binary path
- end
-
- def write_file(path)
- path = File.join(@gemhome, path)
- dir = File.dirname path
- FileUtils.mkdir_p dir
-
- open path, 'wb' do |io|
- yield io
- end
-
- path
- end
-
- def quick_gem(gemname, version='2')
- require 'rubygems/specification'
-
- spec = Gem::Specification.new do |s|
- s.platform = Gem::Platform::RUBY
- s.name = gemname
- s.version = version
- s.author = 'A User'
- s.email = 'example@example.com'
- s.homepage = 'http://example.com'
- s.has_rdoc = true
- s.summary = "this is a summary"
- s.description = "This is a test description"
-
- yield(s) if block_given?
- end
-
- path = File.join "specifications", spec.spec_name
- written_path = write_file path do |io|
- io.write(spec.to_ruby)
- end
-
- spec.loaded_from = written_path
-
- Gem.source_index.add_spec spec
-
- return spec
- end
-
- def util_build_gem(spec)
- dir = File.join(@gemhome, 'gems', spec.full_name)
- FileUtils.mkdir_p dir
-
- Dir.chdir dir do
- spec.files.each do |file|
- next if File.exist? file
- FileUtils.mkdir_p File.dirname(file)
- File.open file, 'w' do |fp| fp.puts "# #{file}" end
- end
-
- use_ui MockGemUi.new do
- Gem::Builder.new(spec).build
- end
-
- FileUtils.mv spec.file_name,
- File.join(@gemhome, 'cache', "#{spec.original_name}.gem")
- end
- end
-
- def util_clear_gems
- FileUtils.rm_r File.join(@gemhome, 'gems')
- FileUtils.rm_r File.join(@gemhome, 'specifications')
- Gem.source_index.refresh!
- end
-
- def util_gem(name, version, deps = nil, &block)
- if deps then # fuck you eric
- block = proc do |s|
- deps.each do |n, req|
- s.add_dependency n, (req || '>= 0')
- end
- end
- end
-
- spec = quick_gem(name, version, &block)
-
- util_build_gem spec
-
- cache_file = File.join @tempdir, 'gems', "#{spec.original_name}.gem"
- FileUtils.mv File.join(@gemhome, 'cache', "#{spec.original_name}.gem"),
- cache_file
- FileUtils.rm File.join(@gemhome, 'specifications', spec.spec_name)
-
- spec.loaded_from = nil
- spec.loaded = false
-
- [spec, cache_file]
- end
-
- def util_gzip(data)
- out = StringIO.new
-
- Zlib::GzipWriter.wrap out do |io|
- io.write data
- end
-
- out.string
- end
-
- def util_make_gems(prerelease = false)
- @a1 = quick_gem 'a', '1' do |s|
- s.files = %w[lib/code.rb]
- s.require_paths = %w[lib]
- s.date = Gem::Specification::TODAY - 86400
- s.homepage = 'http://a.example.com'
- s.email = %w[example@example.com example2@example.com]
- s.authors = %w[Example Example2]
- s.description = <<-DESC
-This line is really, really long. So long, in fact, that it is more than eighty characters long! The purpose of this line is for testing wrapping behavior because sometimes people don't wrap their text to eighty characters. Without the wrapping, the text might not look good in the RSS feed.
-
-Also, a list:
- * An entry that's actually kind of sort
- * an entry that's really long, which will probably get wrapped funny. That's ok, somebody wasn't thinking straight when they made it more than eighty characters.
- DESC
- end
-
- init = proc do |s|
- s.files = %w[lib/code.rb]
- s.require_paths = %w[lib]
- end
-
- @a2 = quick_gem('a', '2', &init)
- @a3a = quick_gem('a', '3.a', &init)
- @a_evil9 = quick_gem('a_evil', '9', &init)
- @b2 = quick_gem('b', '2', &init)
- @c1_2 = quick_gem('c', '1.2', &init)
- @pl1 = quick_gem 'pl', '1' do |s| # l for legacy
- s.files = %w[lib/code.rb]
- s.require_paths = %w[lib]
- s.platform = Gem::Platform.new 'i386-linux'
- s.instance_variable_set :@original_platform, 'i386-linux'
- end
-
- if prerelease
- @a2_pre = quick_gem('a', '2.a', &init)
- write_file File.join(*%W[gems #{@a2_pre.original_name} lib code.rb]) do
- end
- util_build_gem @a2_pre
- end
-
- write_file File.join(*%W[gems #{@a1.original_name} lib code.rb]) do end
- write_file File.join(*%W[gems #{@a2.original_name} lib code.rb]) do end
- write_file File.join(*%W[gems #{@a3a.original_name} lib code.rb]) do end
- write_file File.join(*%W[gems #{@b2.original_name} lib code.rb]) do end
- write_file File.join(*%W[gems #{@c1_2.original_name} lib code.rb]) do end
- write_file File.join(*%W[gems #{@pl1.original_name} lib code.rb]) do end
-
- [@a1, @a2, @a3a, @a_evil9, @b2, @c1_2, @pl1].each do |spec|
- util_build_gem spec
- end
-
- FileUtils.rm_r File.join(@gemhome, 'gems', @pl1.original_name)
-
- Gem.source_index = nil
- end
-
- ##
- # Set the platform to +arch+
-
- def util_set_arch(arch)
- Gem::ConfigMap[:arch] = arch
- platform = Gem::Platform.new arch
-
- Gem.instance_variable_set :@platforms, nil
- Gem::Platform.instance_variable_set :@local, nil
-
- platform
- end
-
- def util_setup_fake_fetcher(prerelease = false)
- require 'zlib'
- require 'socket'
- require 'rubygems/remote_fetcher'
-
- @fetcher = Gem::FakeFetcher.new
-
- util_make_gems(prerelease)
-
- @all_gems = [@a1, @a2, @a3a, @a_evil9, @b2, @c1_2].sort
- @all_gem_names = @all_gems.map { |gem| gem.full_name }
-
- gem_names = [@a1.full_name, @a2.full_name, @a3a.full_name, @b2.full_name]
- @gem_names = gem_names.sort.join("\n")
-
- @source_index = Gem::SourceIndex.new
- @source_index.add_spec @a1
- @source_index.add_spec @a2
- @source_index.add_spec @a3a
- @source_index.add_spec @a_evil9
- @source_index.add_spec @c1_2
- @source_index.add_spec @a2_pre if prerelease
-
- Gem::RemoteFetcher.fetcher = @fetcher
- end
-
- def util_setup_spec_fetcher(*specs)
- specs = Hash[*specs.map { |spec| [spec.full_name, spec] }.flatten]
- si = Gem::SourceIndex.new specs
-
- spec_fetcher = Gem::SpecFetcher.fetcher
-
- spec_fetcher.specs[@uri] = []
- si.gems.sort_by { |_, spec| spec }.each do |_, spec|
- spec_tuple = [spec.name, spec.version, spec.original_platform]
- spec_fetcher.specs[@uri] << spec_tuple
- end
-
- spec_fetcher.latest_specs[@uri] = []
- si.latest_specs.sort.each do |spec|
- spec_tuple = [spec.name, spec.version, spec.original_platform]
- spec_fetcher.latest_specs[@uri] << spec_tuple
- end
-
- spec_fetcher.prerelease_specs[@uri] = []
- si.prerelease_specs.sort.each do |spec|
- spec_tuple = [spec.name, spec.version, spec.original_platform]
- spec_fetcher.prerelease_specs[@uri] << spec_tuple
- end
-
- (si.gems.merge si.prerelease_gems).sort_by { |_,spec| spec }.each do |_, spec|
- path = "#{@gem_repo}quick/Marshal.#{Gem.marshal_version}/#{spec.original_name}.gemspec.rz"
- data = Marshal.dump spec
- data_deflate = Zlib::Deflate.deflate data
- @fetcher.data[path] = data_deflate
- end
-
- si
- end
-
- def util_zip(data)
- Zlib::Deflate.deflate data
- end
-
- def self.win_platform?
- Gem.win_platform?
- end
-
- def win_platform?
- Gem.win_platform?
- end
-
- # Returns whether or not we're on a version of Ruby built with VC++ (or
- # Borland) versus Cygwin, Mingw, etc.
- #
- def self.vc_windows?
- RUBY_PLATFORM.match('mswin')
- end
-
- # Returns whether or not we're on a version of Ruby built with VC++ (or
- # Borland) versus Cygwin, Mingw, etc.
- #
- def vc_windows?
- RUBY_PLATFORM.match('mswin')
- end
-
- # Returns the make command for the current platform. For versions of Ruby
- # built on MS Windows with VC++ or Borland it will return 'nmake'. On all
- # other platforms, including Cygwin, it will return 'make'.
- #
- def self.make_command
- ENV["make"] || (vc_windows? ? 'nmake' : 'make')
- end
-
- # Returns the make command for the current platform. For versions of Ruby
- # built on MS Windows with VC++ or Borland it will return 'nmake'. On all
- # other platforms, including Cygwin, it will return 'make'.
- #
- def make_command
- ENV["make"] || (vc_windows? ? 'nmake' : 'make')
- end
-
- # Returns whether or not the nmake command could be found.
- #
- def nmake_found?
- system('nmake /? 1>NUL 2>&1')
- end
-
- # NOTE Allow tests to use a random (but controlled) port number instead of
- # a hardcoded one. This helps CI tools when running parallels builds on
- # the same builder slave.
- def self.process_based_port
- @@process_based_port ||= 8000 + $$ % 1000
- end
-
- def process_based_port
- self.class.process_based_port
- end
-
- def build_rake_in
- gem_ruby = Gem.ruby
- Gem.ruby = @@ruby
- env_rake = ENV["rake"]
- ENV["rake"] = @@rake
- yield @@rake
- ensure
- Gem.ruby = gem_ruby
- if env_rake
- ENV["rake"] = env_rake
- else
- ENV.delete("rake")
- end
- end
-
- def self.rubybin
- ruby = ENV["RUBY"]
- return ruby if ruby
- ruby = "ruby"
- rubyexe = "#{ruby}.exe"
-
- 3.times do
- if File.exist? ruby and File.executable? ruby and !File.directory? ruby
- return File.expand_path(ruby)
- end
- if File.exist? rubyexe and File.executable? rubyexe
- return File.expand_path(rubyexe)
- end
- ruby = File.join("..", ruby)
- end
-
- begin
- require "rbconfig"
- File.join(RbConfig::CONFIG["bindir"],
- RbConfig::CONFIG["ruby_install_name"] +
- RbConfig::CONFIG["EXEEXT"])
- rescue LoadError
- "ruby"
- end
- end
-
- @@ruby = rubybin
- env_rake = ENV['rake']
- ruby19_rake = File.expand_path("../../../bin/rake", __FILE__)
- @@rake = if env_rake then
- ENV["rake"]
- elsif File.exist? ruby19_rake then
- @@ruby + " " + ruby19_rake
- else
- 'rake'
- end
-
- ##
- # Construct a new Gem::Dependency.
-
- def dep name, *requirements
- Gem::Dependency.new name, *requirements
- end
-
- ##
- # Construct a new Gem::Requirement.
-
- def req *requirements
- return requirements.first if Gem::Requirement === requirements.first
- Gem::Requirement.create requirements
- end
-
- ##
- # Construct a new Gem::Specification.
-
- def spec name, version, &block
- Gem::Specification.new name, v(version), &block
- end
-
- ##
- # Construct a new Gem::Version.
-
- def v string
- Gem::Version.create string
- end
-
-end
-
diff --git a/test/rubygems/mockgemui.rb b/test/rubygems/mockgemui.rb
deleted file mode 100644
index 52b0e7ffdc..0000000000
--- a/test/rubygems/mockgemui.rb
+++ /dev/null
@@ -1,65 +0,0 @@
-######################################################################
-# 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 'stringio'
-require 'rubygems/user_interaction'
-
-class MockGemUi < Gem::StreamUI
- class TermError < RuntimeError; end
-
- module TTY
-
- attr_accessor :tty
-
- def tty?()
- @tty = true unless defined?(@tty)
- @tty
- end
-
- def noecho
- yield self
- end
- end
-
- def initialize(input = "")
- ins = StringIO.new input
- outs = StringIO.new
- errs = StringIO.new
-
- ins.extend TTY
- outs.extend TTY
- errs.extend TTY
-
- super ins, outs, errs
-
- @terminated = false
- end
-
- def input
- @ins.string
- end
-
- def output
- @outs.string
- end
-
- def error
- @errs.string
- end
-
- def terminated?
- @terminated
- end
-
- def terminate_interaction(status=0)
- @terminated = true
-
- raise TermError unless status == 0
- raise Gem::SystemExitException, status
- end
-
-end
-
diff --git a/test/rubygems/simple_gem.rb b/test/rubygems/simple_gem.rb
index d2145e6e47..8253e4b2eb 100644
--- a/test/rubygems/simple_gem.rb
+++ b/test/rubygems/simple_gem.rb
@@ -5,7 +5,7 @@
######################################################################
SIMPLE_GEM = <<-GEMDATA
- MD5SUM = "b12a4d48febeb2289c539c2574c4b6f8"
+ MD5SUM = "989bf34a1cbecd52e0ea66b662b3a405"
if $0 == __FILE__
require 'optparse'
@@ -13,7 +13,7 @@ SIMPLE_GEM = <<-GEMDATA
ARGV.options do |opts|
opts.on_tail("--help", "show this message") {puts opts; exit}
opts.on('--dir=DIRNAME', "Installation directory for the Gem") {|options[:directory]|}
- opts.on('--force', "Force Gem to intall, bypassing dependency checks") {|options[:force]|}
+ opts.on('--force', "Force Gem to install, bypassing dependency checks") {|options[:force]|}
opts.on('--gen-rdoc', "Generate RDoc documentation for the Gem") {|options[:gen_rdoc]|}
opts.parse!
end
diff --git a/test/rubygems/test_config.rb b/test/rubygems/test_config.rb
index da1998390b..190b6092f1 100644
--- a/test/rubygems/test_config.rb
+++ b/test/rubygems/test_config.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems'
-class TestConfig < RubyGemTestCase
+class TestConfig < Gem::TestCase
def test_datadir
_, err = capture_io do
diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
index 6d17d65789..06f25d4775 100644
--- a/test/rubygems/test_gem.rb
+++ b/test/rubygems/test_gem.rb
@@ -4,14 +4,14 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems'
require 'rubygems/gem_openssl'
require 'rubygems/installer'
require 'pathname'
require 'tmpdir'
-class TestGem < RubyGemTestCase
+class TestGem < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_builder.rb b/test/rubygems/test_gem_builder.rb
index c007548ae5..d146c843bb 100644
--- a/test/rubygems/test_gem_builder.rb
+++ b/test/rubygems/test_gem_builder.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/builder'
-class TestGemBuilder < RubyGemTestCase
+class TestGemBuilder < Gem::TestCase
def test_build
builder = Gem::Builder.new quick_gem('a')
diff --git a/test/rubygems/test_gem_command.rb b/test/rubygems/test_gem_command.rb
index e1db011d44..f79b138df2 100644
--- a/test/rubygems/test_gem_command.rb
+++ b/test/rubygems/test_gem_command.rb
@@ -4,14 +4,14 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/command'
class Gem::Command
public :parser
end
-class TestGemCommand < RubyGemTestCase
+class TestGemCommand < Gem::TestCase
def setup
super
@@ -93,7 +93,7 @@ class TestGemCommand < RubyGemTestCase
assert done
end
- def test_invode_with_bad_options
+ def test_invoke_with_bad_options
use_ui @ui do
@cmd.when_invoked do true end
diff --git a/test/rubygems/test_gem_command_manager.rb b/test/rubygems/test_gem_command_manager.rb
index 66168f0fd5..daadf2520e 100644
--- a/test/rubygems/test_gem_command_manager.rb
+++ b/test/rubygems/test_gem_command_manager.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/command_manager'
-class TestGemCommandManager < RubyGemTestCase
+class TestGemCommandManager < Gem::TestCase
def setup
super
@@ -21,7 +21,7 @@ class TestGemCommandManager < RubyGemTestCase
Gem.load_env_plugins
use_ui @ui do
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
@command_manager.run 'interrupt'
end
assert_equal '', ui.output
@@ -37,7 +37,7 @@ class TestGemCommandManager < RubyGemTestCase
@command_manager.register_command :crash
use_ui @ui do
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
@command_manager.run 'crash'
end
assert_equal '', ui.output
@@ -50,9 +50,9 @@ class TestGemCommandManager < RubyGemTestCase
def test_process_args_bad_arg
use_ui @ui do
- assert_raises(MockGemUi::TermError) {
+ assert_raises Gem::MockGemUi::TermError do
@command_manager.process_args("--bad-arg")
- }
+ end
end
assert_match(/invalid option: --bad-arg/i, @ui.error)
diff --git a/test/rubygems/test_gem_commands_build_command.rb b/test/rubygems/test_gem_commands_build_command.rb
index 9064974551..5c9c5eeb6e 100644
--- a/test/rubygems/test_gem_commands_build_command.rb
+++ b/test/rubygems/test_gem_commands_build_command.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/build_command'
require 'rubygems/format'
-class TestGemCommandsBuildCommand < RubyGemTestCase
+class TestGemCommandsBuildCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_cert_command.rb b/test/rubygems/test_gem_commands_cert_command.rb
index 6afd938861..9d5fc1eada 100644
--- a/test/rubygems/test_gem_commands_cert_command.rb
+++ b/test/rubygems/test_gem_commands_cert_command.rb
@@ -4,14 +4,14 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/cert_command'
unless defined? OpenSSL then
warn "`gem cert` tests are being skipped, module OpenSSL not found"
end
-class TestGemCommandsCertCommand < RubyGemTestCase
+class TestGemCommandsCertCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_check_command.rb b/test/rubygems/test_gem_commands_check_command.rb
index 14418148f0..688210d3d1 100644
--- a/test/rubygems/test_gem_commands_check_command.rb
+++ b/test/rubygems/test_gem_commands_check_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/check_command'
-class TestGemCommandsCheckCommand < RubyGemTestCase
+class TestGemCommandsCheckCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_contents_command.rb b/test/rubygems/test_gem_commands_contents_command.rb
index e865e29af0..6b9750e861 100644
--- a/test/rubygems/test_gem_commands_contents_command.rb
+++ b/test/rubygems/test_gem_commands_contents_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/contents_command'
-class TestGemCommandsContentsCommand < RubyGemTestCase
+class TestGemCommandsContentsCommand < Gem::TestCase
def setup
super
@@ -54,7 +54,7 @@ class TestGemCommandsContentsCommand < RubyGemTestCase
def test_execute_bad_gem
@cmd.options[:args] = %w[foo]
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.execute
end
diff --git a/test/rubygems/test_gem_commands_dependency_command.rb b/test/rubygems/test_gem_commands_dependency_command.rb
index 2f044dce16..40d96f729a 100644
--- a/test/rubygems/test_gem_commands_dependency_command.rb
+++ b/test/rubygems/test_gem_commands_dependency_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/dependency_command'
-class TestGemCommandsDependencyCommand < RubyGemTestCase
+class TestGemCommandsDependencyCommand < Gem::TestCase
def setup
super
@@ -72,7 +72,7 @@ Gem pl-1-x86-linux
def test_execute_no_match
@cmd.options[:args] = %w[foo]
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.execute
end
@@ -161,7 +161,7 @@ Gem foo-2
@cmd.options[:reverse_dependencies] = true
@cmd.options[:domain] = :remote
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.execute
end
diff --git a/test/rubygems/test_gem_commands_environment_command.rb b/test/rubygems/test_gem_commands_environment_command.rb
index 809e05327b..504a12239d 100644
--- a/test/rubygems/test_gem_commands_environment_command.rb
+++ b/test/rubygems/test_gem_commands_environment_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/environment_command'
-class TestGemCommandsEnvironmentCommand < RubyGemTestCase
+class TestGemCommandsEnvironmentCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_fetch_command.rb b/test/rubygems/test_gem_commands_fetch_command.rb
index 9a995a0e8e..657e8e9f80 100644
--- a/test/rubygems/test_gem_commands_fetch_command.rb
+++ b/test/rubygems/test_gem_commands_fetch_command.rb
@@ -4,12 +4,12 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/package'
require 'rubygems/security'
require 'rubygems/commands/fetch_command'
-class TestGemCommandsFetchCommand < RubyGemTestCase
+class TestGemCommandsFetchCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_generate_index_command.rb b/test/rubygems/test_gem_commands_generate_index_command.rb
index 21320bd721..b9eb139f6c 100644
--- a/test/rubygems/test_gem_commands_generate_index_command.rb
+++ b/test/rubygems/test_gem_commands_generate_index_command.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/indexer'
require 'rubygems/commands/generate_index_command'
-class TestGemCommandsGenerateIndexCommand < RubyGemTestCase
+class TestGemCommandsGenerateIndexCommand < Gem::TestCase
def setup
super
@@ -35,7 +35,7 @@ class TestGemCommandsGenerateIndexCommand < RubyGemTestCase
@cmd.options[:rss_gems_host] = 'gems.example.com'
use_ui @ui do
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
@cmd.execute
end
end
diff --git a/test/rubygems/test_gem_commands_install_command.rb b/test/rubygems/test_gem_commands_install_command.rb
index 91e5a9ea0e..a3ceb81ab7 100644
--- a/test/rubygems/test_gem_commands_install_command.rb
+++ b/test/rubygems/test_gem_commands_install_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/install_command'
-class TestGemCommandsInstallCommand < RubyGemTestCase
+class TestGemCommandsInstallCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_list_command.rb b/test/rubygems/test_gem_commands_list_command.rb
index d4cfadda49..9a56ebc779 100644
--- a/test/rubygems/test_gem_commands_list_command.rb
+++ b/test/rubygems/test_gem_commands_list_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/list_command'
-class TestGemCommandsListCommand < RubyGemTestCase
+class TestGemCommandsListCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_lock_command.rb b/test/rubygems/test_gem_commands_lock_command.rb
index 7696bd8b0f..25b033af5d 100644
--- a/test/rubygems/test_gem_commands_lock_command.rb
+++ b/test/rubygems/test_gem_commands_lock_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/lock_command'
-class TestGemCommandsLockCommand < RubyGemTestCase
+class TestGemCommandsLockCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_outdated_command.rb b/test/rubygems/test_gem_commands_outdated_command.rb
index 10862dedf7..6f99f33e99 100644
--- a/test/rubygems/test_gem_commands_outdated_command.rb
+++ b/test/rubygems/test_gem_commands_outdated_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/outdated_command'
-class TestGemCommandsOutdatedCommand < RubyGemTestCase
+class TestGemCommandsOutdatedCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_owner_command.rb b/test/rubygems/test_gem_commands_owner_command.rb
index f95061f0eb..38e49ea79d 100644
--- a/test/rubygems/test_gem_commands_owner_command.rb
+++ b/test/rubygems/test_gem_commands_owner_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/owner_command'
-class TestGemCommandsOwnerCommand < RubyGemTestCase
+class TestGemCommandsOwnerCommand < Gem::TestCase
def setup
super
@@ -44,7 +44,7 @@ EOF
response = "You don't have permission to push to this gem"
@fetcher.data["#{Gem.host}/api/v1/gems/freewill/owners.yaml"] = [response, 403, 'Forbidden']
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.show_owners("freewill")
end
@@ -72,7 +72,7 @@ EOF
response = "You don't have permission to push to this gem"
@fetcher.data["#{Gem.host}/api/v1/gems/freewill/owners"] = [response, 403, 'Forbidden']
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.add_owners("freewill", ["user-new1@example.com"])
end
@@ -100,7 +100,7 @@ EOF
response = "You don't have permission to push to this gem"
@fetcher.data["#{Gem.host}/api/v1/gems/freewill/owners"] = [response, 403, 'Forbidden']
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.remove_owners("freewill", ["user-remove1@example.com"])
end
diff --git a/test/rubygems/test_gem_commands_pristine_command.rb b/test/rubygems/test_gem_commands_pristine_command.rb
index 47df2e4a44..9cab574a1f 100644
--- a/test/rubygems/test_gem_commands_pristine_command.rb
+++ b/test/rubygems/test_gem_commands_pristine_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/pristine_command'
-class TestGemCommandsPristineCommand < RubyGemTestCase
+class TestGemCommandsPristineCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_push_command.rb b/test/rubygems/test_gem_commands_push_command.rb
index 7d7d89166f..b95af2380b 100644
--- a/test/rubygems/test_gem_commands_push_command.rb
+++ b/test/rubygems/test_gem_commands_push_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/push_command'
-class TestGemCommandsPushCommand < RubyGemTestCase
+class TestGemCommandsPushCommand < Gem::TestCase
def setup
super
@@ -74,7 +74,7 @@ class TestGemCommandsPushCommand < RubyGemTestCase
response = "You don't have permission to push to this gem"
@fetcher.data["#{Gem.host}/api/v1/gems"] = [response, 403, 'Forbidden']
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.send_gem(@path)
end
diff --git a/test/rubygems/test_gem_commands_query_command.rb b/test/rubygems/test_gem_commands_query_command.rb
index 1a4a3e0b75..91868b848b 100644
--- a/test/rubygems/test_gem_commands_query_command.rb
+++ b/test/rubygems/test_gem_commands_query_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/query_command'
-class TestGemCommandsQueryCommand < RubyGemTestCase
+class TestGemCommandsQueryCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_server_command.rb b/test/rubygems/test_gem_commands_server_command.rb
index 8cdcb8b24b..e27cc94896 100644
--- a/test/rubygems/test_gem_commands_server_command.rb
+++ b/test/rubygems/test_gem_commands_server_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/server_command'
-class TestGemCommandsServerCommand < RubyGemTestCase
+class TestGemCommandsServerCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_sources_command.rb b/test/rubygems/test_gem_commands_sources_command.rb
index b747d08795..40449bec22 100644
--- a/test/rubygems/test_gem_commands_sources_command.rb
+++ b/test/rubygems/test_gem_commands_sources_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/sources_command'
-class TestGemCommandsSourcesCommand < RubyGemTestCase
+class TestGemCommandsSourcesCommand < Gem::TestCase
def setup
super
@@ -90,7 +90,7 @@ class TestGemCommandsSourcesCommand < RubyGemTestCase
util_setup_spec_fetcher
use_ui @ui do
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
@cmd.execute
end
end
@@ -110,7 +110,7 @@ Error fetching http://beta-gems.example.com:
util_setup_spec_fetcher
use_ui @ui do
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
@cmd.execute
end
end
diff --git a/test/rubygems/test_gem_commands_specification_command.rb b/test/rubygems/test_gem_commands_specification_command.rb
index abdbd733a3..ca210059fd 100644
--- a/test/rubygems/test_gem_commands_specification_command.rb
+++ b/test/rubygems/test_gem_commands_specification_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/specification_command'
-class TestGemCommandsSpecificationCommand < RubyGemTestCase
+class TestGemCommandsSpecificationCommand < Gem::TestCase
def setup
super
@@ -51,7 +51,7 @@ class TestGemCommandsSpecificationCommand < RubyGemTestCase
def test_execute_bad_name
@cmd.options[:args] = %w[foo]
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
use_ui @ui do
@cmd.execute
end
diff --git a/test/rubygems/test_gem_commands_stale_command.rb b/test/rubygems/test_gem_commands_stale_command.rb
index 4f72d13e81..f3876d90db 100644
--- a/test/rubygems/test_gem_commands_stale_command.rb
+++ b/test/rubygems/test_gem_commands_stale_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/stale_command'
-class TestGemCommandsStaleCommand < RubyGemTestCase
+class TestGemCommandsStaleCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_uninstall_command.rb b/test/rubygems/test_gem_commands_uninstall_command.rb
index cb995cd941..c5be3beb90 100644
--- a/test/rubygems/test_gem_commands_uninstall_command.rb
+++ b/test/rubygems/test_gem_commands_uninstall_command.rb
@@ -4,20 +4,16 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
-require "test/rubygems/gem_installer_test_case"
+require 'rubygems/installer_test_case'
require 'rubygems/commands/uninstall_command'
-class TestGemCommandsUninstallCommand < GemInstallerTestCase
+class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
def setup
super
- ui = MockGemUi.new
- util_setup_gem ui
-
build_rake_in do
- use_ui ui do
+ use_ui @ui do
@installer.install
end
end
@@ -28,15 +24,25 @@ class TestGemCommandsUninstallCommand < GemInstallerTestCase
end
def test_execute_removes_executable
+ ui = Gem::MockGemUi.new
+ util_setup_gem ui
+
+ build_rake_in do
+ use_ui ui do
+ @installer.install
+ end
+ end
+
if win_platform?
- assert_equal true, File.exist?(@executable)
+ assert File.exist?(@executable)
else
- assert_equal true, File.symlink?(@executable)
+ assert File.symlink?(@executable)
end
# Evil hack to prevent false removal success
FileUtils.rm_f @executable
- File.open(@executable, "wb+") {|f| f.puts "binary"}
+
+ open(@executable, "wb+") {|f| f.puts "binary"}
@cmd.options[:args] = Array(@spec.name)
use_ui @ui do
diff --git a/test/rubygems/test_gem_commands_unpack_command.rb b/test/rubygems/test_gem_commands_unpack_command.rb
index f8585d1265..e8d7984c65 100644
--- a/test/rubygems/test_gem_commands_unpack_command.rb
+++ b/test/rubygems/test_gem_commands_unpack_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/unpack_command'
-class TestGemCommandsUnpackCommand < RubyGemTestCase
+class TestGemCommandsUnpackCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_update_command.rb b/test/rubygems/test_gem_commands_update_command.rb
index 7da4607151..6c16713130 100644
--- a/test/rubygems/test_gem_commands_update_command.rb
+++ b/test/rubygems/test_gem_commands_update_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/update_command'
-class TestGemCommandsUpdateCommand < RubyGemTestCase
+class TestGemCommandsUpdateCommand < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_commands_which_command.rb b/test/rubygems/test_gem_commands_which_command.rb
index 4a86067079..41cd7cd3f8 100644
--- a/test/rubygems/test_gem_commands_which_command.rb
+++ b/test/rubygems/test_gem_commands_which_command.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/commands/which_command'
-class TestGemCommandsWhichCommand < RubyGemTestCase
+class TestGemCommandsWhichCommand < Gem::TestCase
def setup
super
@@ -45,7 +45,7 @@ class TestGemCommandsWhichCommand < RubyGemTestCase
@cmd.handle_options %w[missing]
use_ui @ui do
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
@cmd.execute
end
end
diff --git a/test/rubygems/test_gem_config_file.rb b/test/rubygems/test_gem_config_file.rb
index ad0d65038f..dc53d21933 100644
--- a/test/rubygems/test_gem_config_file.rb
+++ b/test/rubygems/test_gem_config_file.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/config_file'
-class TestGemConfigFile < RubyGemTestCase
+class TestGemConfigFile < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_dependency.rb b/test/rubygems/test_gem_dependency.rb
index 723364be41..51b746f555 100644
--- a/test/rubygems/test_gem_dependency.rb
+++ b/test/rubygems/test_gem_dependency.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/dependency'
-class TestGemDependency < RubyGemTestCase
+class TestGemDependency < Gem::TestCase
def test_initialize
d = dep "pkg", "> 1.0"
@@ -64,7 +64,7 @@ class TestGemDependency < RubyGemTestCase
def test_equals_tilde
d = dep "a", "0"
- assert_match d, d, "matche self"
+ assert_match d, d, "match self"
assert_match dep("a", ">= 0"), d, "match version exact"
assert_match dep("a", ">= 0"), dep("a", "1"), "match version"
assert_match dep(/a/, ">= 0"), d, "match simple regexp"
diff --git a/test/rubygems/test_gem_dependency_installer.rb b/test/rubygems/test_gem_dependency_installer.rb
index 80f6cd21fd..cdc0428e9f 100644
--- a/test/rubygems/test_gem_dependency_installer.rb
+++ b/test/rubygems/test_gem_dependency_installer.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/dependency_installer'
-class TestGemDependencyInstaller < RubyGemTestCase
+class TestGemDependencyInstaller < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_dependency_list.rb b/test/rubygems/test_gem_dependency_list.rb
index 394676b6ab..92966ace08 100644
--- a/test/rubygems/test_gem_dependency_list.rb
+++ b/test/rubygems/test_gem_dependency_list.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/dependency_list'
-class TestGemDependencyList < RubyGemTestCase
+class TestGemDependencyList < Gem::TestCase
def setup
super
@@ -110,7 +110,7 @@ class TestGemDependencyList < RubyGemTestCase
'deps of trimmed specs not included'
end
- def test_dependency_order_no_dependendencies
+ def test_dependency_order_no_dependencies
@deplist.add @a1, @c2
order = @deplist.dependency_order
diff --git a/test/rubygems/test_gem_doc_manager.rb b/test/rubygems/test_gem_doc_manager.rb
index 7732df2608..be4c12bd5b 100644
--- a/test/rubygems/test_gem_doc_manager.rb
+++ b/test/rubygems/test_gem_doc_manager.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/doc_manager'
-class TestGemDocManager < RubyGemTestCase
+class TestGemDocManager < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_ext_configure_builder.rb b/test/rubygems/test_gem_ext_configure_builder.rb
index 2f2bac351d..b8063f8021 100644
--- a/test/rubygems/test_gem_ext_configure_builder.rb
+++ b/test/rubygems/test_gem_ext_configure_builder.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/ext'
-class TestGemExtConfigureBuilder < RubyGemTestCase
+class TestGemExtConfigureBuilder < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_ext_ext_conf_builder.rb b/test/rubygems/test_gem_ext_ext_conf_builder.rb
index 4b03858a2a..5caae8e973 100644
--- a/test/rubygems/test_gem_ext_ext_conf_builder.rb
+++ b/test/rubygems/test_gem_ext_ext_conf_builder.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/ext'
-class TestGemExtExtConfBuilder < RubyGemTestCase
+class TestGemExtExtConfBuilder < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_ext_rake_builder.rb b/test/rubygems/test_gem_ext_rake_builder.rb
index d2e7de4cda..db0648b2b4 100644
--- a/test/rubygems/test_gem_ext_rake_builder.rb
+++ b/test/rubygems/test_gem_ext_rake_builder.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/ext'
-class TestGemExtRakeBuilder < RubyGemTestCase
+class TestGemExtRakeBuilder < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_format.rb b/test/rubygems/test_gem_format.rb
index 0fa0bba4bf..cbf2bc7788 100644
--- a/test/rubygems/test_gem_format.rb
+++ b/test/rubygems/test_gem_format.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require "test/rubygems/simple_gem"
require 'rubygems/format'
-class TestGemFormat < RubyGemTestCase
+class TestGemFormat < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_gem_path_searcher.rb b/test/rubygems/test_gem_gem_path_searcher.rb
index c9f49681c7..cb4516eaca 100644
--- a/test/rubygems/test_gem_gem_path_searcher.rb
+++ b/test/rubygems/test_gem_gem_path_searcher.rb
@@ -4,7 +4,7 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/gem_path_searcher'
class Gem::GemPathSearcher
@@ -12,7 +12,7 @@ class Gem::GemPathSearcher
attr_accessor :lib_dirs
end
-class TestGemGemPathSearcher < RubyGemTestCase
+class TestGemGemPathSearcher < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_gem_runner.rb b/test/rubygems/test_gem_gem_runner.rb
index 78af8d9a4d..177c71507a 100644
--- a/test/rubygems/test_gem_gem_runner.rb
+++ b/test/rubygems/test_gem_gem_runner.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/gem_runner'
-class TestGemGemRunner < RubyGemTestCase
+class TestGemGemRunner < Gem::TestCase
def test_do_configuration
Gem.clear_paths
diff --git a/test/rubygems/test_gem_gemcutter_utilities.rb b/test/rubygems/test_gem_gemcutter_utilities.rb
index c4d804bd43..79d1e6cdb8 100644
--- a/test/rubygems/test_gem_gemcutter_utilities.rb
+++ b/test/rubygems/test_gem_gemcutter_utilities.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems'
require 'rubygems/gemcutter_utilities'
-class TestGemGemcutterUtilities < RubyGemTestCase
+class TestGemGemcutterUtilities < Gem::TestCase
def setup
super
@@ -74,7 +74,7 @@ class TestGemGemcutterUtilities < RubyGemTestCase
def test_sign_in_with_bad_credentials
skip 'Always uses $stdin on windows' if Gem.win_platform?
- assert_raises MockGemUi::TermError do
+ assert_raises Gem::MockGemUi::TermError do
util_sign_in ['Access Denied.', 403, 'Forbidden']
end
@@ -98,7 +98,7 @@ class TestGemGemcutterUtilities < RubyGemTestCase
@fetcher.data["#{host}/api/v1/api_key"] = response
Gem::RemoteFetcher.fetcher = @fetcher
- @sign_in_ui = MockGemUi.new "#{email}\n#{password}\n"
+ @sign_in_ui = Gem::MockGemUi.new "#{email}\n#{password}\n"
use_ui @sign_in_ui do
@cmd.sign_in
diff --git a/test/rubygems/test_gem_indexer.rb b/test/rubygems/test_gem_indexer.rb
index ebfe9c8105..a7f49506a6 100644
--- a/test/rubygems/test_gem_indexer.rb
+++ b/test/rubygems/test_gem_indexer.rb
@@ -4,14 +4,14 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/indexer'
-unless ''.respond_to? :to_xs then
+unless defined?(Builder::XChar) then
warn "Gem::Indexer tests are being skipped. Install builder gem." if $VERBOSE
end
-class TestGemIndexer < RubyGemTestCase
+class TestGemIndexer < Gem::TestCase
def setup
super
@@ -558,5 +558,5 @@ eighty characters.&lt;/pre&gt;
refute File.exist?(file), "#{file} exists"
end
-end if ''.respond_to? :to_xs
+end if defined?(Builder::XChar)
diff --git a/test/rubygems/test_gem_install_update_options.rb b/test/rubygems/test_gem_install_update_options.rb
index 9000c4f873..937774617f 100644
--- a/test/rubygems/test_gem_install_update_options.rb
+++ b/test/rubygems/test_gem_install_update_options.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_installer_test_case"
+require 'rubygems/installer_test_case'
require 'rubygems/install_update_options'
require 'rubygems/command'
-class TestGemInstallUpdateOptions < GemInstallerTestCase
+class TestGemInstallUpdateOptions < Gem::InstallerTestCase
def setup
super
diff --git a/test/rubygems/test_gem_installer.rb b/test/rubygems/test_gem_installer.rb
index c77de792f3..94fa4423bc 100644
--- a/test/rubygems/test_gem_installer.rb
+++ b/test/rubygems/test_gem_installer.rb
@@ -4,9 +4,9 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_installer_test_case"
+require 'rubygems/installer_test_case'
-class TestGemInstaller < GemInstallerTestCase
+class TestGemInstaller < Gem::InstallerTestCase
def test_app_script_text
util_make_exec '2', ''
@@ -72,6 +72,7 @@ load Gem.bin_path('a', 'my_exec', version)
end
def test_build_extensions_unsupported
+ gem_make_out = File.join @gemhome, 'gems', @spec.full_name, 'gem_make.out'
@spec.extensions << nil
e = assert_raises Gem::Installer::ExtensionBuildError do
@@ -80,15 +81,15 @@ load Gem.bin_path('a', 'my_exec', version)
end
end
- assert_match(/^No builder for extension ''$/, e.message)
+ assert_match(/^\s*No builder for extension ''$/, e.message)
assert_equal "Building native extensions. This could take a while...\n",
@ui.output
assert_equal '', @ui.error
- assert_equal "No builder for extension ''\n", File.read('gem_make.out')
+ assert_equal "No builder for extension ''\n", File.read(gem_make_out)
ensure
- FileUtils.rm_f 'gem_make.out'
+ FileUtils.rm_f gem_make_out
end
def test_ensure_dependency
diff --git a/test/rubygems/test_gem_local_remote_options.rb b/test/rubygems/test_gem_local_remote_options.rb
index 7f122d29a6..8d7907268d 100644
--- a/test/rubygems/test_gem_local_remote_options.rb
+++ b/test/rubygems/test_gem_local_remote_options.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/local_remote_options'
require 'rubygems/command'
-class TestGemLocalRemoteOptions < RubyGemTestCase
+class TestGemLocalRemoteOptions < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_package_tar_header.rb b/test/rubygems/test_gem_package_tar_header.rb
index 2f499a3e0d..20d2204ad7 100644
--- a/test/rubygems/test_gem_package_tar_header.rb
+++ b/test/rubygems/test_gem_package_tar_header.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_package_tar_test_case"
+require 'rubygems/package/tar_test_case'
require 'rubygems/package'
-class TestGemPackageTarHeader < TarTestCase
+class TestGemPackageTarHeader < Gem::Package::TarTestCase
def setup
super
diff --git a/test/rubygems/test_gem_package_tar_input.rb b/test/rubygems/test_gem_package_tar_input.rb
index 377c4e452f..0d3de45ba4 100644
--- a/test/rubygems/test_gem_package_tar_input.rb
+++ b/test/rubygems/test_gem_package_tar_input.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_package_tar_test_case"
+require 'rubygems/package/tar_test_case'
require 'rubygems/package/tar_input'
-class TestGemPackageTarInput < TarTestCase
+class TestGemPackageTarInput < Gem::Package::TarTestCase
# Sometimes the setgid bit doesn't take. Don't know if this is a problem on
# all systems, or just some. But for now, we will ignore it in the tests.
diff --git a/test/rubygems/test_gem_package_tar_output.rb b/test/rubygems/test_gem_package_tar_output.rb
index 090f09284a..7458a749dd 100644
--- a/test/rubygems/test_gem_package_tar_output.rb
+++ b/test/rubygems/test_gem_package_tar_output.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_package_tar_test_case"
+require 'rubygems/package/tar_test_case'
require 'rubygems/package/tar_output'
-class TestGemPackageTarOutput < TarTestCase
+class TestGemPackageTarOutput < Gem::Package::TarTestCase
def setup
super
diff --git a/test/rubygems/test_gem_package_tar_reader.rb b/test/rubygems/test_gem_package_tar_reader.rb
index a57f5355fa..657db9b367 100644
--- a/test/rubygems/test_gem_package_tar_reader.rb
+++ b/test/rubygems/test_gem_package_tar_reader.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_package_tar_test_case"
+require 'rubygems/package/tar_test_case'
require 'rubygems/package'
-class TestGemPackageTarReader < TarTestCase
+class TestGemPackageTarReader < Gem::Package::TarTestCase
def test_each_entry
tar = tar_dir_header "foo", "bar", 0
diff --git a/test/rubygems/test_gem_package_tar_reader_entry.rb b/test/rubygems/test_gem_package_tar_reader_entry.rb
index 1b39b2fd2d..a6d06cf00e 100644
--- a/test/rubygems/test_gem_package_tar_reader_entry.rb
+++ b/test/rubygems/test_gem_package_tar_reader_entry.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_package_tar_test_case"
+require 'rubygems/package/tar_test_case'
require 'rubygems/package'
-class TestGemPackageTarReaderEntry < TarTestCase
+class TestGemPackageTarReaderEntry < Gem::Package::TarTestCase
def setup
super
diff --git a/test/rubygems/test_gem_package_tar_writer.rb b/test/rubygems/test_gem_package_tar_writer.rb
index 8a4c951286..ab9e5dd47d 100644
--- a/test/rubygems/test_gem_package_tar_writer.rb
+++ b/test/rubygems/test_gem_package_tar_writer.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_package_tar_test_case"
+require 'rubygems/package/tar_test_case'
require 'rubygems/package/tar_writer'
-class TestTarWriter < TarTestCase
+class TestTarWriter < Gem::Package::TarTestCase
def setup
super
diff --git a/test/rubygems/test_gem_package_task.rb b/test/rubygems/test_gem_package_task.rb
index 11ed69e02b..d13c554360 100644
--- a/test/rubygems/test_gem_package_task.rb
+++ b/test/rubygems/test_gem_package_task.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems'
require 'rubygems/package_task'
-class TestGemPackageTask < RubyGemTestCase
+class TestGemPackageTask < Gem::TestCase
def test_gem_package
gem = Gem::Specification.new do |g|
diff --git a/test/rubygems/test_gem_platform.rb b/test/rubygems/test_gem_platform.rb
index ac8a65bf7a..666669b233 100644
--- a/test/rubygems/test_gem_platform.rb
+++ b/test/rubygems/test_gem_platform.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/platform'
require 'rbconfig'
-class TestGemPlatform < RubyGemTestCase
+class TestGemPlatform < Gem::TestCase
def test_self_local
util_set_arch 'i686-darwin8.10.1'
diff --git a/test/rubygems/test_gem_remote_fetcher.rb b/test/rubygems/test_gem_remote_fetcher.rb
index fbeb19c239..135b2c7e53 100644
--- a/test/rubygems/test_gem_remote_fetcher.rb
+++ b/test/rubygems/test_gem_remote_fetcher.rb
@@ -4,7 +4,7 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'ostruct'
require 'webrick'
require 'rubygems/remote_fetcher'
@@ -24,7 +24,7 @@ require 'rubygems/format'
# software doesn't really care, as long as we hit the proxy URL when a
# proxy is configured.
-class TestGemRemoteFetcher < RubyGemTestCase
+class TestGemRemoteFetcher < Gem::TestCase
include Gem::DefaultUserInteraction
@@ -617,7 +617,7 @@ gems:
assert_equal '', response.body
end
- def test_request_unmodifed
+ def test_request_unmodified
uri = URI.parse "#{@gem_repo}/specs.#{Gem.marshal_version}"
conn = util_stub_connection_for :body => '', :code => 304
diff --git a/test/rubygems/test_gem_requirement.rb b/test/rubygems/test_gem_requirement.rb
index 03f3ddd5e7..df478190b5 100644
--- a/test/rubygems/test_gem_requirement.rb
+++ b/test/rubygems/test_gem_requirement.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require "rubygems/requirement"
-class TestGemRequirement < RubyGemTestCase
+class TestGemRequirement < Gem::TestCase
def test_equals2
r = req "= 1.2"
diff --git a/test/rubygems/test_gem_security.rb b/test/rubygems/test_gem_security.rb
index 38128e6992..c289edfa09 100644
--- a/test/rubygems/test_gem_security.rb
+++ b/test/rubygems/test_gem_security.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/security'
-class TestGemSecurity < RubyGemTestCase
+class TestGemSecurity < Gem::TestCase
def test_class_build_cert
name = OpenSSL::X509::Name.parse "CN=nobody/DC=example"
diff --git a/test/rubygems/test_gem_server.rb b/test/rubygems/test_gem_server.rb
index f7ba61a4b5..3fad8c486e 100644
--- a/test/rubygems/test_gem_server.rb
+++ b/test/rubygems/test_gem_server.rb
@@ -4,7 +4,7 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/server'
require 'stringio'
@@ -13,7 +13,7 @@ class Gem::Server
attr_reader :server
end
-class TestGemServer < RubyGemTestCase
+class TestGemServer < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_source_index.rb b/test/rubygems/test_gem_source_index.rb
index 95ea94451d..9846c9cc89 100644
--- a/test/rubygems/test_gem_source_index.rb
+++ b/test/rubygems/test_gem_source_index.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/source_index'
require 'rubygems/config_file'
-class TestGemSourceIndex < RubyGemTestCase
+class TestGemSourceIndex < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_spec_fetcher.rb b/test/rubygems/test_gem_spec_fetcher.rb
index 517247b98f..6e3891b866 100644
--- a/test/rubygems/test_gem_spec_fetcher.rb
+++ b/test/rubygems/test_gem_spec_fetcher.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/spec_fetcher'
-class TestGemSpecFetcher < RubyGemTestCase
+class TestGemSpecFetcher < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_specification.rb b/test/rubygems/test_gem_specification.rb
index 573610b52d..49862fe4bb 100644
--- a/test/rubygems/test_gem_specification.rb
+++ b/test/rubygems/test_gem_specification.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'stringio'
require 'rubygems/specification'
-class TestGemSpecification < RubyGemTestCase
+class TestGemSpecification < Gem::TestCase
LEGACY_YAML_SPEC = <<-EOF
--- !ruby/object:Gem::Specification
@@ -997,7 +997,7 @@ end
assert_equal "WARNING: no description specified\n", @ui.error, 'error'
- @ui = MockGemUi.new
+ @ui = Gem::MockGemUi.new
@a1.summary = 'this is my summary'
@a1.description = @a1.summary
@@ -1133,7 +1133,7 @@ end
assert_equal "WARNING: no homepage specified\n", @ui.error, 'error'
- @ui = MockGemUi.new
+ @ui = Gem::MockGemUi.new
@a1.homepage = ''
diff --git a/test/rubygems/test_gem_stream_ui.rb b/test/rubygems/test_gem_stream_ui.rb
index 60bd3032a8..1bc0e0bbd5 100644
--- a/test/rubygems/test_gem_stream_ui.rb
+++ b/test/rubygems/test_gem_stream_ui.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/user_interaction'
require 'timeout'
-class TestGemStreamUI < RubyGemTestCase
+class TestGemStreamUI < Gem::TestCase
module IsTty
attr_accessor :tty
@@ -199,6 +199,24 @@ class TestGemStreamUI < RubyGemTestCase
assert_equal "Fetching: a.gem\rFetching: a.gem ( 50%)\rFetching: a.gem (100%)\n", @out.string
end
+ def test_verbose_download_reporter_progress_nil_length
+ @cfg.verbose = true
+ reporter = @sui.download_reporter
+ reporter.fetch 'a.gem', nil
+ reporter.update 1024
+ reporter.done
+ assert_equal "Fetching: a.gem\rFetching: a.gem (1024B)\rFetching: a.gem (1024B)\n", @out.string
+ end
+
+ def test_verbose_download_reporter_progress_zero_length
+ @cfg.verbose = true
+ reporter = @sui.download_reporter
+ reporter.fetch 'a.gem', 0
+ reporter.update 1024
+ reporter.done
+ assert_equal "Fetching: a.gem\rFetching: a.gem (1024B)\rFetching: a.gem (1024B)\n", @out.string
+ end
+
def test_verbose_download_reporter_no_tty
@out.tty = false
diff --git a/test/rubygems/test_gem_text.rb b/test/rubygems/test_gem_text.rb
index b800c5f58c..775f1e9d12 100644
--- a/test/rubygems/test_gem_text.rb
+++ b/test/rubygems/test_gem_text.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require "rubygems/text"
-class TestGemText < RubyGemTestCase
+class TestGemText < Gem::TestCase
include Gem::Text
def test_format_text
diff --git a/test/rubygems/test_gem_uninstaller.rb b/test/rubygems/test_gem_uninstaller.rb
index 9d42d9bcde..3925ab1a63 100644
--- a/test/rubygems/test_gem_uninstaller.rb
+++ b/test/rubygems/test_gem_uninstaller.rb
@@ -4,31 +4,28 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gem_installer_test_case"
+require 'rubygems/installer_test_case'
require 'rubygems/uninstaller'
-class TestGemUninstaller < GemInstallerTestCase
+class TestGemUninstaller < Gem::InstallerTestCase
def setup
super
- ui = MockGemUi.new
- util_setup_gem ui
-
@user_spec.executables = ["my_exec"]
# HACK util_make_exec
user_bin_dir = File.join Gem.user_dir, 'gems', @user_spec.full_name, 'bin'
FileUtils.mkdir_p user_bin_dir
exec_path = File.join user_bin_dir, "my_exec"
- File.open exec_path, 'w' do |f|
+ open exec_path, 'w' do |f|
f.puts "#!/usr/bin/ruby"
end
user_bin_dir = File.join Gem.user_dir, 'bin'
FileUtils.mkdir_p user_bin_dir
exec_path = File.join user_bin_dir, "my_exec"
- File.open exec_path, 'w' do |f|
+ open exec_path, 'w' do |f|
f.puts "#!/usr/bin/ruby"
end
@@ -50,11 +47,14 @@ class TestGemUninstaller < GemInstallerTestCase
def test_remove_executables_force_keep
uninstaller = Gem::Uninstaller.new nil, :executables => false
+ executable = File.join Gem.user_dir, 'bin', 'my_exec'
+ assert File.exist? executable
+
use_ui @ui do
- uninstaller.remove_executables @spec
+ uninstaller.remove_executables @user_spec
end
- assert_equal true, File.exist?(File.join(@gemhome, 'bin', 'executable'))
+ assert File.exist? executable
assert_equal "Executables and scripts will remain installed.\n", @ui.output
end
@@ -62,13 +62,16 @@ class TestGemUninstaller < GemInstallerTestCase
def test_remove_executables_force_remove
uninstaller = Gem::Uninstaller.new nil, :executables => true
+ executable = File.join Gem.user_dir, 'bin', 'my_exec'
+ assert File.exist? executable
+
use_ui @ui do
- uninstaller.remove_executables @spec
+ uninstaller.remove_executables @user_spec
end
- assert_equal "Removing executable\n", @ui.output
+ assert_equal "Removing my_exec\n", @ui.output
- assert_equal false, File.exist?(File.join(@gemhome, 'bin', 'executable'))
+ refute File.exist? executable
end
def test_remove_executables_user
diff --git a/test/rubygems/test_gem_validator.rb b/test/rubygems/test_gem_validator.rb
index c7f23dcae8..aa4bd38eb6 100644
--- a/test/rubygems/test_gem_validator.rb
+++ b/test/rubygems/test_gem_validator.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require "test/rubygems/simple_gem"
require 'rubygems/validator'
-class TestGemValidator < RubyGemTestCase
+class TestGemValidator < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_gem_version.rb b/test/rubygems/test_gem_version.rb
index a3fbe24f15..d6a15ec459 100644
--- a/test/rubygems/test_gem_version.rb
+++ b/test/rubygems/test_gem_version.rb
@@ -4,10 +4,10 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require "rubygems/version"
-class TestGemVersion < RubyGemTestCase
+class TestGemVersion < Gem::TestCase
def test_bump
assert_bumped_version_equal "5.3", "5.2.4"
diff --git a/test/rubygems/test_gem_version_option.rb b/test/rubygems/test_gem_version_option.rb
index a0b4eac380..bcb594e8dd 100644
--- a/test/rubygems/test_gem_version_option.rb
+++ b/test/rubygems/test_gem_version_option.rb
@@ -4,11 +4,11 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
require 'rubygems/command'
require 'rubygems/version_option'
-class TestGemVersionOption < RubyGemTestCase
+class TestGemVersionOption < Gem::TestCase
def setup
super
diff --git a/test/rubygems/test_kernel.rb b/test/rubygems/test_kernel.rb
index dcbb8770f8..98d27a6123 100644
--- a/test/rubygems/test_kernel.rb
+++ b/test/rubygems/test_kernel.rb
@@ -4,9 +4,9 @@
# File a patch instead and assign it to Ryan Davis or Eric Hodel.
######################################################################
-require "test/rubygems/gemutilities"
+require 'rubygems/test_case'
-class TestKernel < RubyGemTestCase
+class TestKernel < Gem::TestCase
def setup
super
@@ -27,7 +27,7 @@ class TestKernel < RubyGemTestCase
assert $:.any? { |p| %r{a-1/lib} =~ p }
end
- def test_gem_redundent
+ def test_gem_redundant
assert gem('a', '= 1'), "Should load"
refute gem('a', '= 1'), "Should not load"
assert_equal 1, $:.select { |p| %r{a-1/lib} =~ p }.size