diff options
Diffstat (limited to 'test/rubygems/test_gem_commands_fetch_command.rb')
-rw-r--r-- | test/rubygems/test_gem_commands_fetch_command.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_commands_fetch_command.rb b/test/rubygems/test_gem_commands_fetch_command.rb index f4fee79ea3..9017a43b80 100644 --- a/test/rubygems/test_gem_commands_fetch_command.rb +++ b/test/rubygems/test_gem_commands_fetch_command.rb @@ -73,5 +73,30 @@ class TestGemCommandsFetchCommand < Gem::TestCase "#{@a1.full_name} not fetched" end + def test_execute_handles_sources_properly + repo = "http://gems.example.com" + @uri = URI.parse repo + + Gem.sources.replace [repo] + + util_setup_fake_fetcher + util_setup_spec_fetcher @a1, @a2 + + @fetcher.data["#{@gem_repo}gems/#{@a1.file_name}"] = + File.read(@a1.cache_file) + + @cmd.options[:args] = [@a2.name] + @cmd.options[:version] = Gem::Requirement.new '1' + + use_ui @ui do + Dir.chdir @tempdir do + @cmd.execute + end + end + + assert File.exist?(File.join(@tempdir, @a1.file_name)), + "#{@a1.full_name} not fetched" + end + end |