summaryrefslogtreecommitdiff
path: root/test/rubygems/test_gem_remote_fetcher.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rubygems/test_gem_remote_fetcher.rb')
-rw-r--r--test/rubygems/test_gem_remote_fetcher.rb12
1 files changed, 11 insertions, 1 deletions
diff --git a/test/rubygems/test_gem_remote_fetcher.rb b/test/rubygems/test_gem_remote_fetcher.rb
index 93ae73afd4..5598e46b26 100644
--- a/test/rubygems/test_gem_remote_fetcher.rb
+++ b/test/rubygems/test_gem_remote_fetcher.rb
@@ -698,6 +698,14 @@ PeIQQkFng2VVot/WAQbv3ePqWq07g1BBcwIBAg==
assert_equal "too many redirects (#{url})", e.message
end
+ def test_fetch_http_with_additional_headers
+ ENV["http_proxy"] = @proxy_uri
+ ENV["no_proxy"] = URI::parse(@server_uri).host
+ fetcher = Gem::RemoteFetcher.new nil, nil, {"X-Captain" => "murphy"}
+ @fetcher = fetcher
+ assert_equal "murphy", fetcher.fetch_path(@server_uri)
+ end
+
def test_fetch_s3
fetcher = Gem::RemoteFetcher.new nil
@fetcher = fetcher
@@ -984,7 +992,9 @@ PeIQQkFng2VVot/WAQbv3ePqWq07g1BBcwIBAg==
)
s.mount_proc("/kill") { |req, res| s.shutdown }
s.mount_proc("/yaml") { |req, res|
- if @enable_yaml
+ if req["X-Captain"]
+ res.body = req["X-Captain"]
+ elsif @enable_yaml
res.body = data
res['Content-Type'] = 'text/plain'
res['content-length'] = data.size