agiley-faraday_middleware 0.8.3.2 → 0.9.0
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.
- data/.gitignore +2 -2
- data/.rspec +2 -1
- data/.travis.yml +6 -3
- data/Gemfile +5 -1
- data/Rakefile +16 -4
- data/faraday_middleware.gemspec +1 -1
- data/lib/faraday_middleware.rb +17 -13
- data/lib/faraday_middleware/instrumentation.rb +2 -2
- data/lib/faraday_middleware/rack_compatible.rb +14 -9
- data/lib/faraday_middleware/request/encode_json.rb +4 -2
- data/lib/faraday_middleware/request/method_override.rb +51 -0
- data/lib/faraday_middleware/request/oauth.rb +28 -5
- data/lib/faraday_middleware/response/caching.rb +7 -2
- data/lib/faraday_middleware/response/chunked.rb +29 -0
- data/lib/faraday_middleware/response/follow_redirects.rb +100 -11
- data/lib/faraday_middleware/response/mashify.rb +11 -2
- data/lib/faraday_middleware/response/parse_dates.rb +39 -0
- data/lib/faraday_middleware/response/parse_json.rb +17 -5
- data/lib/faraday_middleware/response/parse_marshal.rb +2 -2
- data/lib/faraday_middleware/response/parse_xml.rb +3 -2
- data/lib/faraday_middleware/response/parse_yaml.rb +3 -1
- data/lib/faraday_middleware/response/rashify.rb +2 -0
- data/lib/faraday_middleware/response_middleware.rb +2 -2
- data/lib/faraday_middleware/version.rb +1 -1
- data/spec/caching_test.rb +37 -4
- data/spec/chunked_spec.rb +78 -0
- data/spec/encode_json_spec.rb +13 -13
- data/spec/follow_redirects_spec.rb +203 -18
- data/spec/helper.rb +15 -1
- data/spec/mashify_spec.rb +46 -26
- data/spec/method_override_spec.rb +92 -0
- data/spec/oauth2_spec.rb +18 -18
- data/spec/oauth_spec.rb +67 -17
- data/spec/parse_dates_spec.rb +39 -0
- data/spec/parse_json_spec.rb +37 -19
- data/spec/parse_marshal_spec.rb +3 -3
- data/spec/parse_xml_spec.rb +13 -13
- data/spec/parse_yaml_spec.rb +10 -10
- data/spec/rashify_spec.rb +26 -23
- metadata +78 -21
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'helper'
|
2
|
+
require 'faraday_middleware/response/parse_dates'
|
3
|
+
require 'json'
|
4
|
+
|
5
|
+
describe FaradayMiddleware::ParseDates, :type => :response do
|
6
|
+
let(:parsed){
|
7
|
+
if RUBY_VERSION > "1.9"
|
8
|
+
"2012-02-01 13:14:15 UTC"
|
9
|
+
else
|
10
|
+
"Wed Feb 01 13:14:15 UTC 2012"
|
11
|
+
end
|
12
|
+
}
|
13
|
+
|
14
|
+
it "parses dates" do
|
15
|
+
expect(process({"x" => "2012-02-01T13:14:15Z"}).body["x"].to_s).to eq(parsed)
|
16
|
+
end
|
17
|
+
|
18
|
+
it "parses nested dates in hash" do
|
19
|
+
expect(process({"x" => {"y" => "2012-02-01T13:14:15Z"}}).body["x"]["y"].to_s).to eq(parsed)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "parses nested dates in arrays" do
|
23
|
+
expect(process({"x" => [{"y" =>"2012-02-01T13:14:15Z"}]}).body["x"][0]["y"].to_s).to eq(parsed)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "returns nil when body is empty" do
|
27
|
+
expect(process(nil).body).to eq(nil)
|
28
|
+
end
|
29
|
+
|
30
|
+
it "leaves arrays with ids alone" do
|
31
|
+
expect(process({"x" => [1,2,3]}).body).to eq({"x" => [1,2,3]})
|
32
|
+
end
|
33
|
+
|
34
|
+
it "does not parse date-like things" do
|
35
|
+
expect(process({"x" => "2012-02-01T13:14:15Z bla"}).body["x"].to_s).to eq "2012-02-01T13:14:15Z bla"
|
36
|
+
expect(process({"x" => "12012-02-01T13:14:15Z"}).body["x"].to_s).to eq "12012-02-01T13:14:15Z"
|
37
|
+
expect(process({"x" => "2012-02-01T13:14:15Z\nfoo"}).body["x"].to_s).to eq "2012-02-01T13:14:15Z\nfoo"
|
38
|
+
end
|
39
|
+
end
|
data/spec/parse_json_spec.rb
CHANGED
@@ -4,17 +4,17 @@ require 'faraday_middleware/response/parse_json'
|
|
4
4
|
describe FaradayMiddleware::ParseJson, :type => :response do
|
5
5
|
context "no type matching" do
|
6
6
|
it "doesn't change nil body" do
|
7
|
-
process(nil).body.
|
7
|
+
expect(process(nil).body).to be_nil
|
8
8
|
end
|
9
9
|
|
10
10
|
it "nullifies empty body" do
|
11
|
-
process('').body.
|
11
|
+
expect(process('').body).to be_nil
|
12
12
|
end
|
13
13
|
|
14
14
|
it "parses json body" do
|
15
15
|
response = process('{"a":1}')
|
16
|
-
response.body.
|
17
|
-
response.env[:raw_body].
|
16
|
+
expect(response.body).to eq('a' => 1)
|
17
|
+
expect(response.env[:raw_body]).to be_nil
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
@@ -23,13 +23,13 @@ describe FaradayMiddleware::ParseJson, :type => :response do
|
|
23
23
|
|
24
24
|
it "parses json body" do
|
25
25
|
response = process('{"a":1}')
|
26
|
-
response.body.
|
27
|
-
response.env[:raw_body].
|
26
|
+
expect(response.body).to eq('a' => 1)
|
27
|
+
expect(response.env[:raw_body]).to eq('{"a":1}')
|
28
28
|
end
|
29
29
|
|
30
30
|
it "can opt out of preserving raw" do
|
31
31
|
response = process('{"a":1}', nil, :preserve_raw => false)
|
32
|
-
response.env[:raw_body].
|
32
|
+
expect(response.env[:raw_body]).to be_nil
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
@@ -38,12 +38,12 @@ describe FaradayMiddleware::ParseJson, :type => :response do
|
|
38
38
|
|
39
39
|
it "parses json body of correct type" do
|
40
40
|
response = process('{"a":1}', 'application/x-json')
|
41
|
-
response.body.
|
41
|
+
expect(response.body).to eq('a' => 1)
|
42
42
|
end
|
43
43
|
|
44
44
|
it "ignores json body of incorrect type" do
|
45
45
|
response = process('{"a":1}', 'text/json-xml')
|
46
|
-
response.body.
|
46
|
+
expect(response.body).to eq('{"a":1}')
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
@@ -51,18 +51,18 @@ describe FaradayMiddleware::ParseJson, :type => :response do
|
|
51
51
|
let(:options) { {:content_type => %w[a/b c/d]} }
|
52
52
|
|
53
53
|
it "parses json body of correct type" do
|
54
|
-
process('{"a":1}', 'a/b').body.
|
55
|
-
process('{"a":1}', 'c/d').body.
|
54
|
+
expect(process('{"a":1}', 'a/b').body).to be_a(Hash)
|
55
|
+
expect(process('{"a":1}', 'c/d').body).to be_a(Hash)
|
56
56
|
end
|
57
57
|
|
58
58
|
it "ignores json body of incorrect type" do
|
59
|
-
process('{"a":1}', 'a/d').body.
|
59
|
+
expect(process('{"a":1}', 'a/d').body).not_to be_a(Hash)
|
60
60
|
end
|
61
61
|
end
|
62
62
|
|
63
63
|
it "chokes on invalid json" do
|
64
|
-
['{!', '
|
65
|
-
expect
|
64
|
+
['{!', '"a"', 'true', 'null', '1'].each do |data|
|
65
|
+
expect{ process(data) }.to raise_error(Faraday::Error::ParsingError)
|
66
66
|
end
|
67
67
|
end
|
68
68
|
|
@@ -76,19 +76,37 @@ describe FaradayMiddleware::ParseJson, :type => :response do
|
|
76
76
|
|
77
77
|
it "ignores completely incompatible type" do
|
78
78
|
response = process('{"a":1}', 'application/xml')
|
79
|
-
response.body.
|
79
|
+
expect(response.body).to eq('{"a":1}')
|
80
80
|
end
|
81
81
|
|
82
82
|
it "ignores compatible type with bad data" do
|
83
83
|
response = process('var a = 1', 'text/javascript')
|
84
|
-
response.body.
|
85
|
-
response['content-type'].
|
84
|
+
expect(response.body).to eq('var a = 1')
|
85
|
+
expect(response['content-type']).to eq('text/javascript')
|
86
86
|
end
|
87
87
|
|
88
88
|
it "corrects compatible type and data" do
|
89
89
|
response = process('{"a":1}', 'text/javascript')
|
90
|
-
response.body.
|
91
|
-
response['content-type'].
|
90
|
+
expect(response.body).to be_a(Hash)
|
91
|
+
expect(response['content-type']).to eq('application/json')
|
92
|
+
end
|
93
|
+
|
94
|
+
it "corrects compatible type even when data starts with whitespace" do
|
95
|
+
response = process(%( \r\n\t{"a":1}), 'text/javascript')
|
96
|
+
expect(response.body).to be_a(Hash)
|
97
|
+
expect(response['content-type']).to eq('application/json')
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
context "HEAD responses" do
|
102
|
+
it "nullifies the body if it's only one space" do
|
103
|
+
response = process(' ')
|
104
|
+
expect(response.body).to be_nil
|
105
|
+
end
|
106
|
+
|
107
|
+
it "nullifies the body if it's two spaces" do
|
108
|
+
response = process(' ')
|
109
|
+
expect(response.body).to be_nil
|
92
110
|
end
|
93
111
|
end
|
94
112
|
end
|
data/spec/parse_marshal_spec.rb
CHANGED
@@ -3,14 +3,14 @@ require 'faraday_middleware/response/parse_marshal'
|
|
3
3
|
|
4
4
|
describe FaradayMiddleware::ParseMarshal, :type => :response do
|
5
5
|
it "restores a marshaled dump" do
|
6
|
-
process(Marshal.dump(:a => 1)).body.
|
6
|
+
expect(process(Marshal.dump(:a => 1)).body).to be_eql(:a => 1)
|
7
7
|
end
|
8
8
|
|
9
9
|
it "nulifies blank response" do
|
10
|
-
process('').body.
|
10
|
+
expect(process('').body).to be_nil
|
11
11
|
end
|
12
12
|
|
13
13
|
it "chokes on invalid content" do
|
14
|
-
expect
|
14
|
+
expect{ process('abc') }.to raise_error(Faraday::Error::ParsingError)
|
15
15
|
end
|
16
16
|
end
|
data/spec/parse_xml_spec.rb
CHANGED
@@ -7,17 +7,17 @@ describe FaradayMiddleware::ParseXml, :type => :response do
|
|
7
7
|
|
8
8
|
context "no type matching" do
|
9
9
|
it "doesn't change nil body" do
|
10
|
-
process(nil).body.
|
10
|
+
expect(process(nil).body).to be_nil
|
11
11
|
end
|
12
12
|
|
13
13
|
it "turns empty body into empty hash" do
|
14
|
-
process('').body.
|
14
|
+
expect(process('').body).to be_eql({})
|
15
15
|
end
|
16
16
|
|
17
17
|
it "parses xml body" do
|
18
18
|
response = process(xml)
|
19
|
-
response.body.
|
20
|
-
response.env[:raw_body].
|
19
|
+
expect(response.body).to eq(user)
|
20
|
+
expect(response.env[:raw_body]).to be_nil
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
@@ -26,13 +26,13 @@ describe FaradayMiddleware::ParseXml, :type => :response do
|
|
26
26
|
|
27
27
|
it "parses xml body" do
|
28
28
|
response = process(xml)
|
29
|
-
response.body.
|
30
|
-
response.env[:raw_body].
|
29
|
+
expect(response.body).to eq(user)
|
30
|
+
expect(response.env[:raw_body]).to eq(xml)
|
31
31
|
end
|
32
32
|
|
33
33
|
it "can opt out of preserving raw" do
|
34
34
|
response = process(xml, nil, :preserve_raw => false)
|
35
|
-
response.env[:raw_body].
|
35
|
+
expect(response.env[:raw_body]).to be_nil
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
@@ -41,12 +41,12 @@ describe FaradayMiddleware::ParseXml, :type => :response do
|
|
41
41
|
|
42
42
|
it "parses xml body of correct type" do
|
43
43
|
response = process(xml, 'application/xml')
|
44
|
-
response.body.
|
44
|
+
expect(response.body).to eq(user)
|
45
45
|
end
|
46
46
|
|
47
47
|
it "ignores xml body of incorrect type" do
|
48
48
|
response = process(xml, 'text/html')
|
49
|
-
response.body.
|
49
|
+
expect(response.body).to eq(xml)
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
@@ -54,18 +54,18 @@ describe FaradayMiddleware::ParseXml, :type => :response do
|
|
54
54
|
let(:options) { {:content_type => %w[a/b c/d]} }
|
55
55
|
|
56
56
|
it "parses xml body of correct type" do
|
57
|
-
process(xml, 'a/b').body.
|
58
|
-
process(xml, 'c/d').body.
|
57
|
+
expect(process(xml, 'a/b').body).to be_a(Hash)
|
58
|
+
expect(process(xml, 'c/d').body).to be_a(Hash)
|
59
59
|
end
|
60
60
|
|
61
61
|
it "ignores xml body of incorrect type" do
|
62
|
-
process(xml, 'a/d').body.
|
62
|
+
expect(process(xml, 'a/d').body).not_to be_a(Hash)
|
63
63
|
end
|
64
64
|
end
|
65
65
|
|
66
66
|
it "chokes on invalid xml" do
|
67
67
|
['{!', '"a"', 'true', 'null', '1'].each do |data|
|
68
|
-
expect
|
68
|
+
expect{ process(data) }.to raise_error(Faraday::Error::ParsingError)
|
69
69
|
end
|
70
70
|
end
|
71
71
|
end
|
data/spec/parse_yaml_spec.rb
CHANGED
@@ -4,17 +4,17 @@ require 'faraday_middleware/response/parse_yaml'
|
|
4
4
|
describe FaradayMiddleware::ParseYaml, :type => :response do
|
5
5
|
context "no type matching" do
|
6
6
|
it "doesn't change nil body" do
|
7
|
-
process(nil).body.
|
7
|
+
expect(process(nil).body).to be_nil
|
8
8
|
end
|
9
9
|
|
10
10
|
it "returns false for empty body" do
|
11
|
-
process('').body.
|
11
|
+
expect(process('').body).to be_false
|
12
12
|
end
|
13
13
|
|
14
14
|
it "parses yaml body" do
|
15
15
|
response = process('a: 1')
|
16
|
-
response.body.
|
17
|
-
response.env[:raw_body].
|
16
|
+
expect(response.body).to eq('a' => 1)
|
17
|
+
expect(response.env[:raw_body]).to be_nil
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
@@ -23,13 +23,13 @@ describe FaradayMiddleware::ParseYaml, :type => :response do
|
|
23
23
|
|
24
24
|
it "parses yaml body" do
|
25
25
|
response = process('a: 1')
|
26
|
-
response.body.
|
27
|
-
response.env[:raw_body].
|
26
|
+
expect(response.body).to eq('a' => 1)
|
27
|
+
expect(response.env[:raw_body]).to eq('a: 1')
|
28
28
|
end
|
29
29
|
|
30
30
|
it "can opt out of preserving raw" do
|
31
31
|
response = process('a: 1', nil, :preserve_raw => false)
|
32
|
-
response.env[:raw_body].
|
32
|
+
expect(response.env[:raw_body]).to be_nil
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
@@ -38,16 +38,16 @@ describe FaradayMiddleware::ParseYaml, :type => :response do
|
|
38
38
|
|
39
39
|
it "parses json body of correct type" do
|
40
40
|
response = process('a: 1', 'application/x-yaml')
|
41
|
-
response.body.
|
41
|
+
expect(response.body).to eq('a' => 1)
|
42
42
|
end
|
43
43
|
|
44
44
|
it "ignores json body of incorrect type" do
|
45
45
|
response = process('a: 1', 'text/yaml-xml')
|
46
|
-
response.body.
|
46
|
+
expect(response.body).to eq('a: 1')
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
50
|
it "chokes on invalid yaml" do
|
51
|
-
expect
|
51
|
+
expect{ process('{!') }.to raise_error(Faraday::Error::ParsingError)
|
52
52
|
end
|
53
53
|
end
|
data/spec/rashify_spec.rb
CHANGED
@@ -3,52 +3,52 @@ require 'faraday_middleware/response/rashify'
|
|
3
3
|
|
4
4
|
describe FaradayMiddleware::Rashify do
|
5
5
|
|
6
|
-
context
|
6
|
+
context "when used" do
|
7
7
|
let(:rashify) { described_class.new }
|
8
8
|
|
9
|
-
it
|
9
|
+
it "creates a Hashie::Rash from the body" do
|
10
10
|
env = { :body => { "name" => "Erik Michaels-Ober", "username" => "sferik" } }
|
11
11
|
me = rashify.on_complete(env)
|
12
|
-
me.class.
|
12
|
+
expect(me.class).to eq(Hashie::Rash)
|
13
13
|
end
|
14
14
|
|
15
|
-
it
|
15
|
+
it "handles strings" do
|
16
16
|
env = { :body => "Most amazing string EVER" }
|
17
17
|
me = rashify.on_complete(env)
|
18
|
-
me.
|
18
|
+
expect(me).to eq("Most amazing string EVER")
|
19
19
|
end
|
20
20
|
|
21
|
-
it
|
21
|
+
it "handles hashes and decamelcase the keys" do
|
22
22
|
env = { :body => { "name" => "Erik Michaels-Ober", "userName" => "sferik" } }
|
23
23
|
me = rashify.on_complete(env)
|
24
|
-
me.name.
|
25
|
-
me.user_name.
|
24
|
+
expect(me.name).to eq('Erik Michaels-Ober')
|
25
|
+
expect(me.user_name).to eq('sferik')
|
26
26
|
end
|
27
27
|
|
28
|
-
it
|
28
|
+
it "handles arrays" do
|
29
29
|
env = { :body => [123, 456] }
|
30
30
|
values = rashify.on_complete(env)
|
31
|
-
values.first.
|
32
|
-
values.last.
|
31
|
+
expect(values.first).to eq(123)
|
32
|
+
expect(values.last).to eq(456)
|
33
33
|
end
|
34
34
|
|
35
|
-
it
|
35
|
+
it "handles arrays of hashes" do
|
36
36
|
env = { :body => [{ "username" => "sferik" }, { "username" => "pengwynn" }] }
|
37
37
|
us = rashify.on_complete(env)
|
38
|
-
us.first.username.
|
39
|
-
us.last.username.
|
38
|
+
expect(us.first.username).to eq('sferik')
|
39
|
+
expect(us.last.username).to eq('pengwynn')
|
40
40
|
end
|
41
41
|
|
42
|
-
it
|
42
|
+
it "handles mixed arrays" do
|
43
43
|
env = { :body => [123, { "username" => "sferik" }, 456] }
|
44
44
|
values = rashify.on_complete(env)
|
45
|
-
values.first.
|
46
|
-
values.last.
|
47
|
-
values[1].username.
|
45
|
+
expect(values.first).to eq(123)
|
46
|
+
expect(values.last).to eq(456)
|
47
|
+
expect(values[1].username).to eq('sferik')
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
|
-
context
|
51
|
+
context "integration test" do
|
52
52
|
let(:stubs) { Faraday::Adapter::Test::Stubs.new }
|
53
53
|
let(:connection) do
|
54
54
|
Faraday::Connection.new do |builder|
|
@@ -59,11 +59,14 @@ describe FaradayMiddleware::Rashify do
|
|
59
59
|
|
60
60
|
# although it is not good practice to pass a hash as the body, if we add ParseJson
|
61
61
|
# to the middleware stack we end up testing two middlewares instead of one
|
62
|
-
it
|
63
|
-
stubs.get('/hash') {
|
62
|
+
it "creates a Hash from the body" do
|
63
|
+
stubs.get('/hash') {
|
64
|
+
data = { 'name' => 'Erik Michaels-Ober', 'username' => 'sferik' }
|
65
|
+
[200, {'content-type' => 'application/json; charset=utf-8'}, data]
|
66
|
+
}
|
64
67
|
me = connection.get('/hash').body
|
65
|
-
me.name.
|
66
|
-
me.username.
|
68
|
+
expect(me.name).to eq('Erik Michaels-Ober')
|
69
|
+
expect(me.username).to eq('sferik')
|
67
70
|
end
|
68
71
|
end
|
69
72
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: agiley-faraday_middleware
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
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-
|
13
|
+
date: 2012-11-19 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: faraday
|
17
|
-
requirement:
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ! '>='
|
@@ -25,10 +25,18 @@ dependencies:
|
|
25
25
|
version: '0.9'
|
26
26
|
type: :runtime
|
27
27
|
prerelease: false
|
28
|
-
version_requirements:
|
28
|
+
version_requirements: !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.7.4
|
34
|
+
- - <
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '0.9'
|
29
37
|
- !ruby/object:Gem::Dependency
|
30
38
|
name: multi_xml
|
31
|
-
requirement:
|
39
|
+
requirement: !ruby/object:Gem::Requirement
|
32
40
|
none: false
|
33
41
|
requirements:
|
34
42
|
- - ~>
|
@@ -36,10 +44,15 @@ dependencies:
|
|
36
44
|
version: '0.2'
|
37
45
|
type: :development
|
38
46
|
prerelease: false
|
39
|
-
version_requirements:
|
47
|
+
version_requirements: !ruby/object:Gem::Requirement
|
48
|
+
none: false
|
49
|
+
requirements:
|
50
|
+
- - ~>
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '0.2'
|
40
53
|
- !ruby/object:Gem::Dependency
|
41
54
|
name: nokogiri
|
42
|
-
requirement:
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
43
56
|
none: false
|
44
57
|
requirements:
|
45
58
|
- - ~>
|
@@ -47,10 +60,15 @@ dependencies:
|
|
47
60
|
version: 1.5.0
|
48
61
|
type: :development
|
49
62
|
prerelease: false
|
50
|
-
version_requirements:
|
63
|
+
version_requirements: !ruby/object:Gem::Requirement
|
64
|
+
none: false
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 1.5.0
|
51
69
|
- !ruby/object:Gem::Dependency
|
52
70
|
name: rake
|
53
|
-
requirement:
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
54
72
|
none: false
|
55
73
|
requirements:
|
56
74
|
- - ~>
|
@@ -58,10 +76,15 @@ dependencies:
|
|
58
76
|
version: '0.9'
|
59
77
|
type: :development
|
60
78
|
prerelease: false
|
61
|
-
version_requirements:
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
none: false
|
81
|
+
requirements:
|
82
|
+
- - ~>
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: '0.9'
|
62
85
|
- !ruby/object:Gem::Dependency
|
63
86
|
name: hashie
|
64
|
-
requirement:
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
65
88
|
none: false
|
66
89
|
requirements:
|
67
90
|
- - ~>
|
@@ -69,10 +92,15 @@ dependencies:
|
|
69
92
|
version: '1.2'
|
70
93
|
type: :development
|
71
94
|
prerelease: false
|
72
|
-
version_requirements:
|
95
|
+
version_requirements: !ruby/object:Gem::Requirement
|
96
|
+
none: false
|
97
|
+
requirements:
|
98
|
+
- - ~>
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: '1.2'
|
73
101
|
- !ruby/object:Gem::Dependency
|
74
102
|
name: rash
|
75
|
-
requirement:
|
103
|
+
requirement: !ruby/object:Gem::Requirement
|
76
104
|
none: false
|
77
105
|
requirements:
|
78
106
|
- - ~>
|
@@ -80,10 +108,15 @@ dependencies:
|
|
80
108
|
version: '0.3'
|
81
109
|
type: :development
|
82
110
|
prerelease: false
|
83
|
-
version_requirements:
|
111
|
+
version_requirements: !ruby/object:Gem::Requirement
|
112
|
+
none: false
|
113
|
+
requirements:
|
114
|
+
- - ~>
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: '0.3'
|
84
117
|
- !ruby/object:Gem::Dependency
|
85
118
|
name: rspec
|
86
|
-
requirement:
|
119
|
+
requirement: !ruby/object:Gem::Requirement
|
87
120
|
none: false
|
88
121
|
requirements:
|
89
122
|
- - ~>
|
@@ -91,10 +124,15 @@ dependencies:
|
|
91
124
|
version: '2.6'
|
92
125
|
type: :development
|
93
126
|
prerelease: false
|
94
|
-
version_requirements:
|
127
|
+
version_requirements: !ruby/object:Gem::Requirement
|
128
|
+
none: false
|
129
|
+
requirements:
|
130
|
+
- - ~>
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '2.6'
|
95
133
|
- !ruby/object:Gem::Dependency
|
96
134
|
name: simple_oauth
|
97
|
-
requirement:
|
135
|
+
requirement: !ruby/object:Gem::Requirement
|
98
136
|
none: false
|
99
137
|
requirements:
|
100
138
|
- - ~>
|
@@ -102,10 +140,15 @@ dependencies:
|
|
102
140
|
version: '0.1'
|
103
141
|
type: :development
|
104
142
|
prerelease: false
|
105
|
-
version_requirements:
|
143
|
+
version_requirements: !ruby/object:Gem::Requirement
|
144
|
+
none: false
|
145
|
+
requirements:
|
146
|
+
- - ~>
|
147
|
+
- !ruby/object:Gem::Version
|
148
|
+
version: '0.1'
|
106
149
|
- !ruby/object:Gem::Dependency
|
107
150
|
name: rack-cache
|
108
|
-
requirement:
|
151
|
+
requirement: !ruby/object:Gem::Requirement
|
109
152
|
none: false
|
110
153
|
requirements:
|
111
154
|
- - ~>
|
@@ -113,7 +156,12 @@ dependencies:
|
|
113
156
|
version: '1.1'
|
114
157
|
type: :development
|
115
158
|
prerelease: false
|
116
|
-
version_requirements:
|
159
|
+
version_requirements: !ruby/object:Gem::Requirement
|
160
|
+
none: false
|
161
|
+
requirements:
|
162
|
+
- - ~>
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '1.1'
|
117
165
|
description: Various middleware for Faraday
|
118
166
|
email:
|
119
167
|
- sferik@gmail.com
|
@@ -138,12 +186,15 @@ files:
|
|
138
186
|
- lib/faraday_middleware/instrumentation.rb
|
139
187
|
- lib/faraday_middleware/rack_compatible.rb
|
140
188
|
- lib/faraday_middleware/request/encode_json.rb
|
189
|
+
- lib/faraday_middleware/request/method_override.rb
|
141
190
|
- lib/faraday_middleware/request/oauth.rb
|
142
191
|
- lib/faraday_middleware/request/oauth2.rb
|
143
192
|
- lib/faraday_middleware/response/caching.rb
|
193
|
+
- lib/faraday_middleware/response/chunked.rb
|
144
194
|
- lib/faraday_middleware/response/follow_redirects.rb
|
145
195
|
- lib/faraday_middleware/response/force_utf.rb
|
146
196
|
- lib/faraday_middleware/response/mashify.rb
|
197
|
+
- lib/faraday_middleware/response/parse_dates.rb
|
147
198
|
- lib/faraday_middleware/response/parse_json.rb
|
148
199
|
- lib/faraday_middleware/response/parse_marshal.rb
|
149
200
|
- lib/faraday_middleware/response/parse_nokogiri_html.rb
|
@@ -154,12 +205,15 @@ files:
|
|
154
205
|
- lib/faraday_middleware/response_middleware.rb
|
155
206
|
- lib/faraday_middleware/version.rb
|
156
207
|
- spec/caching_test.rb
|
208
|
+
- spec/chunked_spec.rb
|
157
209
|
- spec/encode_json_spec.rb
|
158
210
|
- spec/follow_redirects_spec.rb
|
159
211
|
- spec/helper.rb
|
160
212
|
- spec/mashify_spec.rb
|
213
|
+
- spec/method_override_spec.rb
|
161
214
|
- spec/oauth2_spec.rb
|
162
215
|
- spec/oauth_spec.rb
|
216
|
+
- spec/parse_dates_spec.rb
|
163
217
|
- spec/parse_json_spec.rb
|
164
218
|
- spec/parse_marshal_spec.rb
|
165
219
|
- spec/parse_xml_spec.rb
|
@@ -185,18 +239,21 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
239
|
version: 1.3.6
|
186
240
|
requirements: []
|
187
241
|
rubyforge_project:
|
188
|
-
rubygems_version: 1.8.
|
242
|
+
rubygems_version: 1.8.24
|
189
243
|
signing_key:
|
190
244
|
specification_version: 3
|
191
245
|
summary: Various middleware for Faraday
|
192
246
|
test_files:
|
193
247
|
- spec/caching_test.rb
|
248
|
+
- spec/chunked_spec.rb
|
194
249
|
- spec/encode_json_spec.rb
|
195
250
|
- spec/follow_redirects_spec.rb
|
196
251
|
- spec/helper.rb
|
197
252
|
- spec/mashify_spec.rb
|
253
|
+
- spec/method_override_spec.rb
|
198
254
|
- spec/oauth2_spec.rb
|
199
255
|
- spec/oauth_spec.rb
|
256
|
+
- spec/parse_dates_spec.rb
|
200
257
|
- spec/parse_json_spec.rb
|
201
258
|
- spec/parse_marshal_spec.rb
|
202
259
|
- spec/parse_xml_spec.rb
|