summaryrefslogtreecommitdiff
path: root/test/rubygems/gemutilities.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rubygems/gemutilities.rb')
-rw-r--r--test/rubygems/gemutilities.rb68
1 files changed, 36 insertions, 32 deletions
diff --git a/test/rubygems/gemutilities.rb b/test/rubygems/gemutilities.rb
index 43334f51e1..6a806a2367 100644
--- a/test/rubygems/gemutilities.rb
+++ b/test/rubygems/gemutilities.rb
@@ -1,9 +1,3 @@
-#--
-# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
-# All rights reserved.
-# See LICENSE.txt for permissions.
-#++
-
at_exit { $SAFE = 1 }
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
@@ -82,6 +76,8 @@ class RubyGemTestCase < MiniTest::Unit::TestCase
@orig_ruby = ruby
end
+ Gem.ensure_gem_subdirectories @gemhome
+
@orig_ENV_HOME = ENV['HOME']
ENV['HOME'] = @userhome
Gem.instance_variable_set :@user_home, nil
@@ -159,7 +155,7 @@ class RubyGemTestCase < MiniTest::Unit::TestCase
Gem.clear_paths
if ruby = @orig_ruby
- Gem.class_eval {@ruby = @ruby}
+ Gem.class_eval {@ruby = ruby}
end
if @orig_ENV_HOME then
@@ -178,7 +174,7 @@ class RubyGemTestCase < MiniTest::Unit::TestCase
end
end
- gem = File.join(@tempdir, "#{gem.full_name}.gem").untaint
+ gem = File.join(@tempdir, gem.file_name).untaint
Gem::Installer.new(gem, :wrappers => true).install
end
@@ -256,7 +252,7 @@ class RubyGemTestCase < MiniTest::Unit::TestCase
yield(s) if block_given?
end
- path = File.join "specifications", "#{spec.full_name}.gemspec"
+ path = File.join "specifications", spec.spec_name
written_path = write_file path do |io|
io.write(spec.to_ruby)
end
@@ -283,7 +279,7 @@ class RubyGemTestCase < MiniTest::Unit::TestCase
Gem::Builder.new(spec).build
end
- FileUtils.mv "#{spec.full_name}.gem",
+ FileUtils.mv spec.file_name,
File.join(@gemhome, 'cache', "#{spec.original_name}.gem")
end
end
@@ -302,8 +298,7 @@ class RubyGemTestCase < MiniTest::Unit::TestCase
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.full_name}.gemspec")
+ FileUtils.rm File.join(@gemhome, 'specifications', spec.spec_name)
spec.loaded_from = nil
spec.loaded = false
@@ -417,26 +412,6 @@ Also, a list:
Gem::RemoteFetcher.fetcher = @fetcher
end
- def util_setup_source_info_cache(*specs)
- require 'rubygems/source_info_cache'
- require 'rubygems/source_info_cache_entry'
-
- specs = Hash[*specs.map { |spec| [spec.full_name, spec] }.flatten]
- si = Gem::SourceIndex.new specs
-
- sice = Gem::SourceInfoCacheEntry.new si, 0
- sic = Gem::SourceInfoCache.new
-
- sic.set_cache_data( { @gem_repo => sice } )
- sic.update
- sic.write_cache
- sic.reset_cache_data
-
- Gem::SourceInfoCache.instance_variable_set :@cache, sic
-
- si
- end
-
def util_setup_spec_fetcher(*specs)
specs = Hash[*specs.map { |spec| [spec.full_name, spec] }.flatten]
si = Gem::SourceIndex.new specs
@@ -583,6 +558,35 @@ Also, a list:
'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
MiniTest::Unit.autorun