rack-client 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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