rack-client 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -21,7 +21,7 @@ things.
21
21
 
22
22
  <pre>
23
23
  response = Rack::Client.get("http://some-website.com/blah.txt")
24
- response.code #=> 200
24
+ response.status #=> 200
25
25
  response.body #=> "some body"
26
26
  </pre>
27
27
 
@@ -34,7 +34,7 @@ module Rack
34
34
 
35
35
  def_delegators :response, :[], :[]=, :close, :delete_cookie, :each,
36
36
  :empty?, :finish, :headers, :redirect,
37
- :set_cookie, :status, :to_a, :write
37
+ :set_cookie, :status, :to_a, :to_ary, :write
38
38
  def_delegator :response, :body, :chunked_body
39
39
 
40
40
  def initialize(*tuple)
@@ -86,7 +86,7 @@ module Rack
86
86
  def request_tuple(url, headers = {}, body_or_params = nil, query_params = {}, &block)
87
87
  query_hash = Hash === query_params ? query_params : Utils.build_query(query_params)
88
88
 
89
- uri = URI.parse(url)
89
+ uri = url.is_a?(URI) ? url : URI.parse(url)
90
90
 
91
91
  unless query_params.empty?
92
92
  uri.query = Utils.build_nested_query(Utils.parse_nested_query(uri.query).merge(query_params))
@@ -19,7 +19,7 @@ module Rack
19
19
  end
20
20
 
21
21
  def to_http
22
- self.inject({}) {|h,(header,value)| h.update(clean(header) => value) }
22
+ self.inject({}) {|h,(header,value)| h.update(clean(header) => Array(value).join("\n")) }
23
23
  end
24
24
 
25
25
  def to_env
@@ -30,7 +30,11 @@ module Rack
30
30
 
31
31
  def parse(excon_response)
32
32
  body = excon_response.body.empty? ? [] : StringIO.new(excon_response.body)
33
- Response.new(excon_response.status, Headers.new(excon_response.headers).to_http, body)
33
+ headers = {}
34
+ excon_response.headers.map do |key,value|
35
+ headers[key] = value.split(", ")
36
+ end
37
+ Response.new(excon_response.status, Headers.new(headers).to_http, body)
34
38
  end
35
39
 
36
40
  def connection_for(request)
@@ -95,7 +95,7 @@ module Rack
95
95
  def parse_headers(net_response)
96
96
  headers = Headers.new
97
97
 
98
- net_response.each do |k,v|
98
+ net_response.to_hash.each do |k,v|
99
99
  headers.update(k => v)
100
100
  end
101
101
 
@@ -45,7 +45,7 @@ module Rack
45
45
  end
46
46
 
47
47
  def process(rack_request)
48
- ::Typhoeus::Request.run((url_for(rack_request)).to_s, params_for(rack_request))
48
+ ::Typhoeus::Request.new((url_for(rack_request)).to_s, params_for(rack_request)).run
49
49
  end
50
50
 
51
51
  def url_for(rack_request)
@@ -1,5 +1,5 @@
1
1
  module Rack
2
2
  module Client
3
- VERSION = "0.4.0"
3
+ VERSION = "0.4.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-client
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 13
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 0
10
- version: 0.4.0
9
+ - 1
10
+ version: 0.4.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Tim Carey-Smith
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-06-15 00:00:00 -07:00
18
+ date: 2013-02-25 00:00:00 -08:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency