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.
Files changed (40) hide show
  1. data/.gitignore +2 -2
  2. data/.rspec +2 -1
  3. data/.travis.yml +6 -3
  4. data/Gemfile +5 -1
  5. data/Rakefile +16 -4
  6. data/faraday_middleware.gemspec +1 -1
  7. data/lib/faraday_middleware.rb +17 -13
  8. data/lib/faraday_middleware/instrumentation.rb +2 -2
  9. data/lib/faraday_middleware/rack_compatible.rb +14 -9
  10. data/lib/faraday_middleware/request/encode_json.rb +4 -2
  11. data/lib/faraday_middleware/request/method_override.rb +51 -0
  12. data/lib/faraday_middleware/request/oauth.rb +28 -5
  13. data/lib/faraday_middleware/response/caching.rb +7 -2
  14. data/lib/faraday_middleware/response/chunked.rb +29 -0
  15. data/lib/faraday_middleware/response/follow_redirects.rb +100 -11
  16. data/lib/faraday_middleware/response/mashify.rb +11 -2
  17. data/lib/faraday_middleware/response/parse_dates.rb +39 -0
  18. data/lib/faraday_middleware/response/parse_json.rb +17 -5
  19. data/lib/faraday_middleware/response/parse_marshal.rb +2 -2
  20. data/lib/faraday_middleware/response/parse_xml.rb +3 -2
  21. data/lib/faraday_middleware/response/parse_yaml.rb +3 -1
  22. data/lib/faraday_middleware/response/rashify.rb +2 -0
  23. data/lib/faraday_middleware/response_middleware.rb +2 -2
  24. data/lib/faraday_middleware/version.rb +1 -1
  25. data/spec/caching_test.rb +37 -4
  26. data/spec/chunked_spec.rb +78 -0
  27. data/spec/encode_json_spec.rb +13 -13
  28. data/spec/follow_redirects_spec.rb +203 -18
  29. data/spec/helper.rb +15 -1
  30. data/spec/mashify_spec.rb +46 -26
  31. data/spec/method_override_spec.rb +92 -0
  32. data/spec/oauth2_spec.rb +18 -18
  33. data/spec/oauth_spec.rb +67 -17
  34. data/spec/parse_dates_spec.rb +39 -0
  35. data/spec/parse_json_spec.rb +37 -19
  36. data/spec/parse_marshal_spec.rb +3 -3
  37. data/spec/parse_xml_spec.rb +13 -13
  38. data/spec/parse_yaml_spec.rb +10 -10
  39. data/spec/rashify_spec.rb +26 -23
  40. 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
@@ -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.should be_nil
7
+ expect(process(nil).body).to be_nil
8
8
  end
9
9
 
10
10
  it "nullifies empty body" do
11
- process('').body.should be_nil
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.should eql('a' => 1)
17
- response.env[:raw_body].should be_nil
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.should eql('a' => 1)
27
- response.env[:raw_body].should eql('{"a":1}')
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].should be_nil
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.should eql('a' => 1)
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.should eql('{"a":1}')
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.should be_a(Hash)
55
- process('{"a":1}', 'c/d').body.should be_a(Hash)
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.should_not be_a(Hash)
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
- ['{!', ' ', '"a"', 'true', 'null', '1'].each do |data|
65
- expect { process(data) }.to raise_error(Faraday::Error::ParsingError)
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.should eql('{"a":1}')
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.should eql('var a = 1')
85
- response['content-type'].should eql('text/javascript')
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.should be_a(Hash)
91
- response['content-type'].should eql('application/json')
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
@@ -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.should be_eql(:a => 1)
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.should be_nil
10
+ expect(process('').body).to be_nil
11
11
  end
12
12
 
13
13
  it "chokes on invalid content" do
14
- expect { process('abc') }.to raise_error(Faraday::Error::ParsingError)
14
+ expect{ process('abc') }.to raise_error(Faraday::Error::ParsingError)
15
15
  end
16
16
  end
@@ -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.should be_nil
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.should be_eql({})
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.should eql(user)
20
- response.env[:raw_body].should be_nil
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.should eql(user)
30
- response.env[:raw_body].should eql(xml)
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].should be_nil
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.should eql(user)
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.should eql(xml)
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.should be_a(Hash)
58
- process(xml, 'c/d').body.should be_a(Hash)
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.should_not be_a(Hash)
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 { process(data) }.to raise_error(Faraday::Error::ParsingError)
68
+ expect{ process(data) }.to raise_error(Faraday::Error::ParsingError)
69
69
  end
70
70
  end
71
71
  end
@@ -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.should be_nil
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.should be_false
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.should eql('a' => 1)
17
- response.env[:raw_body].should be_nil
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.should eql('a' => 1)
27
- response.env[:raw_body].should eql('a: 1')
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].should be_nil
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.should eql('a' => 1)
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.should eql('a: 1')
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 { process('{!') }.to raise_error(Faraday::Error::ParsingError)
51
+ expect{ process('{!') }.to raise_error(Faraday::Error::ParsingError)
52
52
  end
53
53
  end
@@ -3,52 +3,52 @@ require 'faraday_middleware/response/rashify'
3
3
 
4
4
  describe FaradayMiddleware::Rashify do
5
5
 
6
- context 'when used' do
6
+ context "when used" do
7
7
  let(:rashify) { described_class.new }
8
8
 
9
- it 'should create a Hashie::Rash from the body' do
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.should == Hashie::Rash
12
+ expect(me.class).to eq(Hashie::Rash)
13
13
  end
14
14
 
15
- it 'should handle strings' do
15
+ it "handles strings" do
16
16
  env = { :body => "Most amazing string EVER" }
17
17
  me = rashify.on_complete(env)
18
- me.should == "Most amazing string EVER"
18
+ expect(me).to eq("Most amazing string EVER")
19
19
  end
20
20
 
21
- it 'should handle hashes and decamelcase the keys' do
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.should == 'Erik Michaels-Ober'
25
- me.user_name.should == 'sferik'
24
+ expect(me.name).to eq('Erik Michaels-Ober')
25
+ expect(me.user_name).to eq('sferik')
26
26
  end
27
27
 
28
- it 'should handle arrays' do
28
+ it "handles arrays" do
29
29
  env = { :body => [123, 456] }
30
30
  values = rashify.on_complete(env)
31
- values.first.should == 123
32
- values.last.should == 456
31
+ expect(values.first).to eq(123)
32
+ expect(values.last).to eq(456)
33
33
  end
34
34
 
35
- it 'should handle arrays of hashes' do
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.should == 'sferik'
39
- us.last.username.should == 'pengwynn'
38
+ expect(us.first.username).to eq('sferik')
39
+ expect(us.last.username).to eq('pengwynn')
40
40
  end
41
41
 
42
- it 'should handle mixed arrays' do
42
+ it "handles mixed arrays" do
43
43
  env = { :body => [123, { "username" => "sferik" }, 456] }
44
44
  values = rashify.on_complete(env)
45
- values.first.should == 123
46
- values.last.should == 456
47
- values[1].username.should == 'sferik'
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 'integration test' do
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 'should create a Hash from the body' do
63
- stubs.get('/hash') {[200, {'content-type' => 'application/json; charset=utf-8'}, { "name" => "Erik Michaels-Ober", "username" => "sferik" }]}
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.should == 'Erik Michaels-Ober'
66
- me.username.should == 'sferik'
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.8.3.2
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-03-05 00:00:00.000000000 Z
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: &70137784874120 !ruby/object:Gem::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: *70137784874120
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: &70137784873220 !ruby/object:Gem::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: *70137784873220
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: &70137784872720 !ruby/object:Gem::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: *70137784872720
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: &70137784872140 !ruby/object:Gem::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: *70137784872140
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: &70137784871640 !ruby/object:Gem::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: *70137784871640
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: &70137784871060 !ruby/object:Gem::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: *70137784871060
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: &70137784870460 !ruby/object:Gem::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: *70137784870460
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: &70137784869900 !ruby/object:Gem::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: *70137784869900
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: &70137784869360 !ruby/object:Gem::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: *70137784869360
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.17
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