summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ruby/rest-client/files/rest-client-1.6.7-ruby19.patch')
-rw-r--r--dev-ruby/rest-client/files/rest-client-1.6.7-ruby19.patch111
1 files changed, 111 insertions, 0 deletions
diff --git a/dev-ruby/rest-client/files/rest-client-1.6.7-ruby19.patch b/dev-ruby/rest-client/files/rest-client-1.6.7-ruby19.patch
new file mode 100644
index 000000000000..92ae14532967
--- /dev/null
+++ b/dev-ruby/rest-client/files/rest-client-1.6.7-ruby19.patch
@@ -0,0 +1,111 @@
+diff --git a/spec/base.rb b/spec/base.rb
+index 965a6e2..60fb86f 100644
+--- a/spec/base.rb
++++ b/spec/base.rb
+@@ -2,8 +2,6 @@ def is_ruby_19?
+ RUBY_VERSION == '1.9.1' or RUBY_VERSION == '1.9.2'
+ end
+
+-Encoding.default_internal = Encoding.default_external = "ASCII-8BIT" if is_ruby_19?
+-
+ require 'rubygems'
+ require 'spec'
+
+@@ -14,3 +12,4 @@ rescue LoadError
+ end
+
+ require File.dirname(__FILE__) + '/../lib/restclient'
++require File.join(File.dirname(__FILE__), 'helpers', 'file_content_helper')
+diff --git a/spec/helpers/file_content_helper.rb b/spec/helpers/file_content_helper.rb
+new file mode 100644
+index 0000000..86dd263
+--- /dev/null
++++ b/spec/helpers/file_content_helper.rb
+@@ -0,0 +1,3 @@
++def file_content_helper(path)
++ IO.respond_to?(:binread) ? IO.binread(path) : IO.read(path)
++end
+diff --git a/spec/payload_spec.rb b/spec/payload_spec.rb
+index 89ded79..c57b300 100644
+--- a/spec/payload_spec.rb
++++ b/spec/payload_spec.rb
+@@ -102,26 +102,28 @@ baz\r
+
+ it "should form properly separated multipart data" do
+ f = File.new(File.dirname(__FILE__) + "/master_shake.jpg")
++ file_contents = file_content_helper(f.path)
+ m = RestClient::Payload::Multipart.new({:foo => f})
+ m.to_s.should == <<-EOS
+ --#{m.boundary}\r
+ Content-Disposition: form-data; name="foo"; filename="master_shake.jpg"\r
+ Content-Type: image/jpeg\r
+ \r
+-#{IO.read(f.path)}\r
++#{file_contents}\r
+ --#{m.boundary}--\r
+ EOS
+ end
+
+ it "should ignore the name attribute when it's not set" do
+ f = File.new(File.dirname(__FILE__) + "/master_shake.jpg")
++ file_contents = file_content_helper(f.path)
+ m = RestClient::Payload::Multipart.new({nil => f})
+ m.to_s.should == <<-EOS
+ --#{m.boundary}\r
+ Content-Disposition: form-data; filename="master_shake.jpg"\r
+ Content-Type: image/jpeg\r
+ \r
+-#{IO.read(f.path)}\r
++#{file_contents}\r
+ --#{m.boundary}--\r
+ EOS
+ end
+@@ -130,13 +132,14 @@ Content-Type: image/jpeg\r
+ f = File.new(File.dirname(__FILE__) + "/master_shake.jpg")
+ f.instance_eval "def content_type; 'text/plain'; end"
+ f.instance_eval "def original_filename; 'foo.txt'; end"
++ file_contents = file_content_helper(f.path)
+ m = RestClient::Payload::Multipart.new({:foo => f})
+ m.to_s.should == <<-EOS
+ --#{m.boundary}\r
+ Content-Disposition: form-data; name="foo"; filename="foo.txt"\r
+ Content-Type: text/plain\r
+ \r
+-#{IO.read(f.path)}\r
++#{file_contents}\r
+ --#{m.boundary}--\r
+ EOS
+ end
+@@ -154,13 +157,14 @@ foo\r
+ f = File.new(File.dirname(__FILE__) + "/master_shake.jpg")
+ f.instance_eval "def content_type; 'text/plain'; end"
+ f.instance_eval "def original_filename; 'foo.txt'; end"
++ file_contents = file_content_helper(f.path)
+ m = RestClient::Payload::Multipart.new({:foo => {:bar => f}})
+ m.to_s.should == <<-EOS
+ --#{m.boundary}\r
+ Content-Disposition: form-data; name="foo[bar]"; filename="foo.txt"\r
+ Content-Type: text/plain\r
+ \r
+-#{IO.read(f.path)}\r
++#{file_contents}\r
+ --#{m.boundary}--\r
+ EOS
+ end
+diff --git a/spec/response_spec.rb b/spec/response_spec.rb
+index 840698e..d3964a8 100644
+--- a/spec/response_spec.rb
++++ b/spec/response_spec.rb
+@@ -90,12 +90,6 @@ describe RestClient::Response do
+ RestClient::Request.execute(:url => 'http://some/resource', :method => :get, :user => 'foo', :password => 'bar', :headers => {:accept => :json}).body.should == 'Foo'
+ end
+
+- it "follows a redirection and keep the cookies" do
+- stub_request(:get, 'http://some/resource').to_return(:body => '', :status => 301, :headers => {'Set-Cookie' => CGI::Cookie.new('Foo', 'Bar'), 'Location' => 'http://new/resource', })
+- stub_request(:get, 'http://new/resource').with(:headers => {'Cookie' => 'Foo=Bar'}).to_return(:body => 'Qux')
+- RestClient::Request.execute(:url => 'http://some/resource', :method => :get).body.should == 'Qux'
+- end
+-
+ it "doesn't follow a 301 when the request is a post" do
+ net_http_res = mock('net http response', :code => 301)
+ response = RestClient::Response.create('abc', net_http_res, {:method => :post})