rest-client 1.1.0 → 1.6.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rest-client might be problematic. Click here for more details.

metadata CHANGED
@@ -1,29 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rest-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ hash: 9
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 6
9
+ - 3
10
+ version: 1.6.3
5
11
  platform: ruby
6
12
  authors:
7
13
  - Adam Wiggins
8
- - Archiloque
14
+ - Julien Kirch
9
15
  autorequire:
10
16
  bindir: bin
11
17
  cert_chain: []
12
18
 
13
- date: 2009-12-28 00:00:00 +01:00
14
- default_executable: restclient
19
+ date: 2011-06-04 00:00:00 Z
15
20
  dependencies:
16
21
  - !ruby/object:Gem::Dependency
17
22
  name: mime-types
18
- type: :runtime
19
- version_requirement:
20
- version_requirements: !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
21
26
  requirements:
22
27
  - - ">="
23
28
  - !ruby/object:Gem::Version
29
+ hash: 47
30
+ segments:
31
+ - 1
32
+ - 16
24
33
  version: "1.16"
25
- version:
26
- description: "A simple REST client for Ruby, inspired by the Sinatra microframework style of specifying actions: get, put, post, delete."
34
+ type: :runtime
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: webmock
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ hash: 57
45
+ segments:
46
+ - 0
47
+ - 9
48
+ - 1
49
+ version: 0.9.1
50
+ type: :development
51
+ version_requirements: *id002
52
+ - !ruby/object:Gem::Dependency
53
+ name: rspec
54
+ prerelease: false
55
+ requirement: &id003 !ruby/object:Gem::Requirement
56
+ none: false
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ hash: 3
61
+ segments:
62
+ - 0
63
+ version: "0"
64
+ type: :development
65
+ version_requirements: *id003
66
+ description: "A simple HTTP and REST client for Ruby, inspired by the Sinatra microframework style of specifying actions: get, put, post, delete."
27
67
  email: rest.client@librelist.com
28
68
  executables:
29
69
  - restclient
@@ -31,65 +71,84 @@ extensions: []
31
71
 
32
72
  extra_rdoc_files:
33
73
  - README.rdoc
74
+ - history.md
34
75
  files:
35
76
  - README.rdoc
36
77
  - Rakefile
37
78
  - VERSION
38
79
  - bin/restclient
80
+ - lib/rest-client.rb
39
81
  - lib/rest_client.rb
40
82
  - lib/restclient.rb
83
+ - lib/restclient/abstract_response.rb
41
84
  - lib/restclient/exceptions.rb
42
- - lib/restclient/mixin/response.rb
43
85
  - lib/restclient/net_http_ext.rb
44
86
  - lib/restclient/payload.rb
45
87
  - lib/restclient/raw_response.rb
46
88
  - lib/restclient/request.rb
47
89
  - lib/restclient/resource.rb
48
90
  - lib/restclient/response.rb
91
+ - spec/abstract_response_spec.rb
49
92
  - spec/base.rb
50
93
  - spec/exceptions_spec.rb
94
+ - spec/integration/certs/equifax.crt
95
+ - spec/integration/certs/verisign.crt
96
+ - spec/integration/request_spec.rb
97
+ - spec/integration_spec.rb
51
98
  - spec/master_shake.jpg
52
- - spec/mixin/response_spec.rb
53
99
  - spec/payload_spec.rb
54
100
  - spec/raw_response_spec.rb
101
+ - spec/request2_spec.rb
55
102
  - spec/request_spec.rb
56
103
  - spec/resource_spec.rb
57
104
  - spec/response_spec.rb
58
105
  - spec/restclient_spec.rb
59
- has_rdoc: true
106
+ - history.md
60
107
  homepage: http://github.com/archiloque/rest-client
61
108
  licenses: []
62
109
 
63
110
  post_install_message:
64
- rdoc_options:
65
- - --charset=UTF-8
111
+ rdoc_options: []
112
+
66
113
  require_paths:
67
114
  - lib
68
115
  required_ruby_version: !ruby/object:Gem::Requirement
116
+ none: false
69
117
  requirements:
70
118
  - - ">="
71
119
  - !ruby/object:Gem::Version
120
+ hash: 3
121
+ segments:
122
+ - 0
72
123
  version: "0"
73
- version:
74
124
  required_rubygems_version: !ruby/object:Gem::Requirement
125
+ none: false
75
126
  requirements:
76
127
  - - ">="
77
128
  - !ruby/object:Gem::Version
129
+ hash: 3
130
+ segments:
131
+ - 0
78
132
  version: "0"
79
- version:
80
133
  requirements: []
81
134
 
82
- rubyforge_project: rest-client
83
- rubygems_version: 1.3.5
135
+ rubyforge_project:
136
+ rubygems_version: 1.8.5
84
137
  signing_key:
85
138
  specification_version: 3
86
- summary: Simple REST client for Ruby, inspired by microframework syntax for specifying actions.
139
+ summary: Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
87
140
  test_files:
141
+ - spec/abstract_response_spec.rb
88
142
  - spec/base.rb
89
143
  - spec/exceptions_spec.rb
90
- - spec/mixin/response_spec.rb
144
+ - spec/integration/certs/equifax.crt
145
+ - spec/integration/certs/verisign.crt
146
+ - spec/integration/request_spec.rb
147
+ - spec/integration_spec.rb
148
+ - spec/master_shake.jpg
91
149
  - spec/payload_spec.rb
92
150
  - spec/raw_response_spec.rb
151
+ - spec/request2_spec.rb
93
152
  - spec/request_spec.rb
94
153
  - spec/resource_spec.rb
95
154
  - spec/response_spec.rb
@@ -1,48 +0,0 @@
1
- module RestClient
2
- module Mixin
3
- module Response
4
- attr_reader :net_http_res
5
-
6
- # HTTP status code, always 200 since RestClient throws exceptions for
7
- # other codes.
8
- def code
9
- @code ||= @net_http_res.code.to_i
10
- end
11
-
12
- # A hash of the headers, beautified with symbols and underscores.
13
- # e.g. "Content-type" will become :content_type.
14
- def headers
15
- @headers ||= self.class.beautify_headers(@net_http_res.to_hash)
16
- end
17
-
18
- # The raw headers.
19
- def raw_headers
20
- @raw_headers ||= @net_http_res.to_hash
21
- end
22
-
23
- # Hash of cookies extracted from response headers
24
- def cookies
25
- @cookies ||= (self.headers[:set_cookie] || "").split('; ').inject({}) do |out, raw_c|
26
- key, val = raw_c.split('=')
27
- unless %w(expires domain path secure).member?(key)
28
- out[key] = val
29
- end
30
- out
31
- end
32
- end
33
-
34
- def self.included(receiver)
35
- receiver.extend(RestClient::Mixin::Response::ClassMethods)
36
- end
37
-
38
- module ClassMethods
39
- def beautify_headers(headers)
40
- headers.inject({}) do |out, (key, value)|
41
- out[key.gsub(/-/, '_').downcase.to_sym] = value.first
42
- out
43
- end
44
- end
45
- end
46
- end
47
- end
48
- end
@@ -1,46 +0,0 @@
1
- require File.dirname(__FILE__) + '/../base'
2
-
3
- class MockResponse
4
- include RestClient::Mixin::Response
5
-
6
- def initialize(body, res)
7
- @net_http_res = res
8
- @body = @body
9
- end
10
- end
11
-
12
- describe RestClient::Mixin::Response do
13
- before do
14
- @net_http_res = mock('net http response')
15
- @response = MockResponse.new('abc', @net_http_res)
16
- end
17
-
18
- it "fetches the numeric response code" do
19
- @net_http_res.should_receive(:code).and_return('200')
20
- @response.code.should == 200
21
- end
22
-
23
- it "beautifies the headers by turning the keys to symbols" do
24
- h = RestClient::Response.beautify_headers('content-type' => [ 'x' ])
25
- h.keys.first.should == :content_type
26
- end
27
-
28
- it "beautifies the headers by turning the values to strings instead of one-element arrays" do
29
- h = RestClient::Response.beautify_headers('x' => [ 'text/html' ] )
30
- h.values.first.should == 'text/html'
31
- end
32
-
33
- it "fetches the headers" do
34
- @net_http_res.should_receive(:to_hash).and_return('content-type' => [ 'text/html' ])
35
- @response.headers.should == { :content_type => 'text/html' }
36
- end
37
-
38
- it "extracts cookies from response headers" do
39
- @net_http_res.should_receive(:to_hash).and_return('set-cookie' => ['session_id=1; path=/'])
40
- @response.cookies.should == { 'session_id' => '1' }
41
- end
42
-
43
- it "can access the net http result directly" do
44
- @response.net_http_res.should == @net_http_res
45
- end
46
- end