faraday_middleware 0.8.3 → 0.8.4

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.
@@ -68,8 +68,13 @@ module FaradayMiddleware
68
68
  end
69
69
 
70
70
  def finalize_response(response, env)
71
- response = env[:response] = response.dup if response.frozen?
72
- response.apply_request env unless response.env[:method]
71
+ response = response.dup if response.frozen?
72
+ env[:response] = response
73
+ unless env[:response_headers]
74
+ env.update response.env
75
+ # FIXME: omg hax
76
+ response.instance_variable_set('@env', env)
77
+ end
73
78
  response
74
79
  end
75
80
  end
@@ -26,8 +26,8 @@ module FaradayMiddleware
26
26
  @content_types = Array(options[:content_type])
27
27
  end
28
28
 
29
- def call(env)
30
- @app.call(env).on_complete do
29
+ def call(environment)
30
+ @app.call(environment).on_complete do |env|
31
31
  if process_response_type?(response_type(env)) and parse_response?(env)
32
32
  process_response(env)
33
33
  end
@@ -1,3 +1,3 @@
1
1
  module FaradayMiddleware
2
- VERSION = "0.8.3"
2
+ VERSION = "0.8.4"
3
3
  end
data/spec/caching_test.rb CHANGED
@@ -22,6 +22,16 @@ class CachingTest < Test::Unit::TestCase
22
22
  end
23
23
  end
24
24
 
25
+ class Lint < Struct.new(:app)
26
+ def call(env)
27
+ app.call(env).on_complete do
28
+ raise "no headers" unless env[:response_headers].is_a? Hash
29
+ raise "no response" unless env[:response].is_a? Faraday::Response
30
+ raise "env not identical" unless env[:response].env.object_id == env.object_id
31
+ end
32
+ end
33
+ end
34
+
25
35
  def setup
26
36
  @cache = TestCache.new
27
37
 
@@ -31,6 +41,7 @@ class CachingTest < Test::Unit::TestCase
31
41
  }
32
42
 
33
43
  @conn = Faraday.new do |b|
44
+ b.use Lint
34
45
  b.use FaradayMiddleware::Caching, @cache
35
46
  b.adapter :test do |stub|
36
47
  stub.get('/', &response)
@@ -55,7 +66,7 @@ class CachingTest < Test::Unit::TestCase
55
66
  get('/') # make cache
56
67
  response = get('/')
57
68
  assert_equal :get, response.env[:method]
58
- assert_equal '/', response.env[:url].to_s
69
+ assert_equal '/', response.env[:url].request_uri
59
70
  end
60
71
 
61
72
  def test_cache_query_params
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faraday_middleware
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.3
4
+ version: 0.8.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-01-29 00:00:00.000000000 Z
13
+ date: 2012-01-30 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday
17
- requirement: &70166886053120 !ruby/object:Gem::Requirement
17
+ requirement: &70176520423440 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -25,10 +25,10 @@ dependencies:
25
25
  version: '0.9'
26
26
  type: :runtime
27
27
  prerelease: false
28
- version_requirements: *70166886053120
28
+ version_requirements: *70176520423440
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: multi_xml
31
- requirement: &70166886068140 !ruby/object:Gem::Requirement
31
+ requirement: &70176520413280 !ruby/object:Gem::Requirement
32
32
  none: false
33
33
  requirements:
34
34
  - - ~>
@@ -36,10 +36,10 @@ dependencies:
36
36
  version: '0.2'
37
37
  type: :development
38
38
  prerelease: false
39
- version_requirements: *70166886068140
39
+ version_requirements: *70176520413280
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: rake
42
- requirement: &70166886066400 !ruby/object:Gem::Requirement
42
+ requirement: &70176520410400 !ruby/object:Gem::Requirement
43
43
  none: false
44
44
  requirements:
45
45
  - - ~>
@@ -47,10 +47,10 @@ dependencies:
47
47
  version: '0.9'
48
48
  type: :development
49
49
  prerelease: false
50
- version_requirements: *70166886066400
50
+ version_requirements: *70176520410400
51
51
  - !ruby/object:Gem::Dependency
52
52
  name: hashie
53
- requirement: &70166886064880 !ruby/object:Gem::Requirement
53
+ requirement: &70176520395720 !ruby/object:Gem::Requirement
54
54
  none: false
55
55
  requirements:
56
56
  - - ~>
@@ -58,10 +58,10 @@ dependencies:
58
58
  version: '1.2'
59
59
  type: :development
60
60
  prerelease: false
61
- version_requirements: *70166886064880
61
+ version_requirements: *70176520395720
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: rash
64
- requirement: &70166886062240 !ruby/object:Gem::Requirement
64
+ requirement: &70176520393980 !ruby/object:Gem::Requirement
65
65
  none: false
66
66
  requirements:
67
67
  - - ~>
@@ -69,10 +69,10 @@ dependencies:
69
69
  version: '0.3'
70
70
  type: :development
71
71
  prerelease: false
72
- version_requirements: *70166886062240
72
+ version_requirements: *70176520393980
73
73
  - !ruby/object:Gem::Dependency
74
74
  name: rspec
75
- requirement: &70166886080220 !ruby/object:Gem::Requirement
75
+ requirement: &70176520392900 !ruby/object:Gem::Requirement
76
76
  none: false
77
77
  requirements:
78
78
  - - ~>
@@ -80,10 +80,10 @@ dependencies:
80
80
  version: '2.6'
81
81
  type: :development
82
82
  prerelease: false
83
- version_requirements: *70166886080220
83
+ version_requirements: *70176520392900
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: simple_oauth
86
- requirement: &70166886078240 !ruby/object:Gem::Requirement
86
+ requirement: &70176520391440 !ruby/object:Gem::Requirement
87
87
  none: false
88
88
  requirements:
89
89
  - - ~>
@@ -91,10 +91,10 @@ dependencies:
91
91
  version: '0.1'
92
92
  type: :development
93
93
  prerelease: false
94
- version_requirements: *70166886078240
94
+ version_requirements: *70176520391440
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: rack-cache
97
- requirement: &70166886075580 !ruby/object:Gem::Requirement
97
+ requirement: &70176520390140 !ruby/object:Gem::Requirement
98
98
  none: false
99
99
  requirements:
100
100
  - - ~>
@@ -102,7 +102,7 @@ dependencies:
102
102
  version: '1.1'
103
103
  type: :development
104
104
  prerelease: false
105
- version_requirements: *70166886075580
105
+ version_requirements: *70176520390140
106
106
  description: Various middleware for Faraday
107
107
  email:
108
108
  - sferik@gmail.com