shutl_resource 0.11.3 → 0.11.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.
- data/lib/shutl/resource/rest_class_methods.rb +4 -2
- data/lib/shutl/resource/version.rb +1 -1
- data/spec/remote_url_spec.rb +18 -0
- metadata +80 -25
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'open-uri'
|
1
2
|
module Shutl::Resource
|
2
3
|
module RestClassMethods
|
3
4
|
def base_uri uri
|
@@ -312,8 +313,9 @@ module Shutl::Resource
|
|
312
313
|
|
313
314
|
url = URI.escape url
|
314
315
|
unless params.empty?
|
315
|
-
url += '?'
|
316
|
-
|
316
|
+
url += '?' + params.entries.map do |key, value|
|
317
|
+
URI::encode "#{key}=#{value}"
|
318
|
+
end.join("&")
|
317
319
|
end
|
318
320
|
url
|
319
321
|
end
|
data/spec/remote_url_spec.rb
CHANGED
@@ -79,6 +79,24 @@ describe Shutl::Resource::Rest do
|
|
79
79
|
|
80
80
|
request.should have_been_requested
|
81
81
|
end
|
82
|
+
|
83
|
+
it 'should support the params with invalid uri name' do
|
84
|
+
request = stub_request(:get, 'http://host/nested/10/resources?arg1=val1&arg%2B2=val2').
|
85
|
+
to_return(body: '{"nested_resources": []}', headers: headers)
|
86
|
+
|
87
|
+
NestedResource.all(parent_id: 10, arg1: 'val1', :'arg 2' => 'val2')
|
88
|
+
|
89
|
+
request.should have_been_requested
|
90
|
+
end
|
91
|
+
|
92
|
+
it 'should support the params with invalid uri value' do
|
93
|
+
request = stub_request(:get, 'http://host/nested/10/resources?arg1=val1&arg2=val%202').
|
94
|
+
to_return(body: '{"nested_resources": []}', headers: headers)
|
95
|
+
|
96
|
+
NestedResource.all(parent_id: 10, arg1: 'val1', arg2: 'val 2')
|
97
|
+
|
98
|
+
request.should have_been_requested
|
99
|
+
end
|
82
100
|
end
|
83
101
|
|
84
102
|
describe '#find' do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shutl_resource
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,11 +11,11 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2013-
|
14
|
+
date: 2013-08-01 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: httparty
|
18
|
-
requirement:
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
19
19
|
none: false
|
20
20
|
requirements:
|
21
21
|
- - ~>
|
@@ -23,21 +23,31 @@ dependencies:
|
|
23
23
|
version: 0.10.0
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
|
-
version_requirements:
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
28
|
+
requirements:
|
29
|
+
- - ~>
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: 0.10.0
|
27
32
|
- !ruby/object:Gem::Dependency
|
28
33
|
name: shutl_auth
|
29
|
-
requirement:
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
30
35
|
none: false
|
31
36
|
requirements:
|
32
|
-
- - =
|
37
|
+
- - '='
|
33
38
|
- !ruby/object:Gem::Version
|
34
39
|
version: 0.8.0
|
35
40
|
type: :runtime
|
36
41
|
prerelease: false
|
37
|
-
version_requirements:
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
none: false
|
44
|
+
requirements:
|
45
|
+
- - '='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.8.0
|
38
48
|
- !ruby/object:Gem::Dependency
|
39
49
|
name: activemodel
|
40
|
-
requirement:
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
41
51
|
none: false
|
42
52
|
requirements:
|
43
53
|
- - ! '>='
|
@@ -45,10 +55,15 @@ dependencies:
|
|
45
55
|
version: '0'
|
46
56
|
type: :runtime
|
47
57
|
prerelease: false
|
48
|
-
version_requirements:
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ! '>='
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
49
64
|
- !ruby/object:Gem::Dependency
|
50
65
|
name: faraday
|
51
|
-
requirement:
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
52
67
|
none: false
|
53
68
|
requirements:
|
54
69
|
- - ! '>='
|
@@ -56,10 +71,15 @@ dependencies:
|
|
56
71
|
version: '0'
|
57
72
|
type: :runtime
|
58
73
|
prerelease: false
|
59
|
-
version_requirements:
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ! '>='
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '0'
|
60
80
|
- !ruby/object:Gem::Dependency
|
61
81
|
name: faraday_middleware
|
62
|
-
requirement:
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
63
83
|
none: false
|
64
84
|
requirements:
|
65
85
|
- - ! '>='
|
@@ -67,10 +87,15 @@ dependencies:
|
|
67
87
|
version: '0'
|
68
88
|
type: :runtime
|
69
89
|
prerelease: false
|
70
|
-
version_requirements:
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
none: false
|
92
|
+
requirements:
|
93
|
+
- - ! '>='
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: '0'
|
71
96
|
- !ruby/object:Gem::Dependency
|
72
97
|
name: faraday-conductivity
|
73
|
-
requirement:
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
74
99
|
none: false
|
75
100
|
requirements:
|
76
101
|
- - ! '>='
|
@@ -78,10 +103,15 @@ dependencies:
|
|
78
103
|
version: '0'
|
79
104
|
type: :runtime
|
80
105
|
prerelease: false
|
81
|
-
version_requirements:
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ! '>='
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0'
|
82
112
|
- !ruby/object:Gem::Dependency
|
83
113
|
name: rake
|
84
|
-
requirement:
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
85
115
|
none: false
|
86
116
|
requirements:
|
87
117
|
- - ! '>='
|
@@ -89,10 +119,15 @@ dependencies:
|
|
89
119
|
version: '0'
|
90
120
|
type: :development
|
91
121
|
prerelease: false
|
92
|
-
version_requirements:
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
none: false
|
124
|
+
requirements:
|
125
|
+
- - ! '>='
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: '0'
|
93
128
|
- !ruby/object:Gem::Dependency
|
94
129
|
name: rspec
|
95
|
-
requirement:
|
130
|
+
requirement: !ruby/object:Gem::Requirement
|
96
131
|
none: false
|
97
132
|
requirements:
|
98
133
|
- - ~>
|
@@ -100,10 +135,15 @@ dependencies:
|
|
100
135
|
version: 2.11.0
|
101
136
|
type: :development
|
102
137
|
prerelease: false
|
103
|
-
version_requirements:
|
138
|
+
version_requirements: !ruby/object:Gem::Requirement
|
139
|
+
none: false
|
140
|
+
requirements:
|
141
|
+
- - ~>
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
version: 2.11.0
|
104
144
|
- !ruby/object:Gem::Dependency
|
105
145
|
name: debugger
|
106
|
-
requirement:
|
146
|
+
requirement: !ruby/object:Gem::Requirement
|
107
147
|
none: false
|
108
148
|
requirements:
|
109
149
|
- - ! '>='
|
@@ -111,10 +151,15 @@ dependencies:
|
|
111
151
|
version: '0'
|
112
152
|
type: :development
|
113
153
|
prerelease: false
|
114
|
-
version_requirements:
|
154
|
+
version_requirements: !ruby/object:Gem::Requirement
|
155
|
+
none: false
|
156
|
+
requirements:
|
157
|
+
- - ! '>='
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
115
160
|
- !ruby/object:Gem::Dependency
|
116
161
|
name: webmock
|
117
|
-
requirement:
|
162
|
+
requirement: !ruby/object:Gem::Requirement
|
118
163
|
none: false
|
119
164
|
requirements:
|
120
165
|
- - ~>
|
@@ -122,7 +167,12 @@ dependencies:
|
|
122
167
|
version: 1.8.7
|
123
168
|
type: :development
|
124
169
|
prerelease: false
|
125
|
-
version_requirements:
|
170
|
+
version_requirements: !ruby/object:Gem::Requirement
|
171
|
+
none: false
|
172
|
+
requirements:
|
173
|
+
- - ~>
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: 1.8.7
|
126
176
|
description: Shutl Rest resource
|
127
177
|
email:
|
128
178
|
- davidr@shutl.co.uk
|
@@ -170,15 +220,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
170
220
|
- - ! '>='
|
171
221
|
- !ruby/object:Gem::Version
|
172
222
|
version: '0'
|
223
|
+
segments:
|
224
|
+
- 0
|
225
|
+
hash: 2169590113851625872
|
173
226
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
174
227
|
none: false
|
175
228
|
requirements:
|
176
229
|
- - ! '>='
|
177
230
|
- !ruby/object:Gem::Version
|
178
231
|
version: '0'
|
232
|
+
segments:
|
233
|
+
- 0
|
234
|
+
hash: 2169590113851625872
|
179
235
|
requirements: []
|
180
236
|
rubyforge_project:
|
181
|
-
rubygems_version: 1.8.
|
237
|
+
rubygems_version: 1.8.25
|
182
238
|
signing_key:
|
183
239
|
specification_version: 3
|
184
240
|
summary: Manage Shutl Rest resource. Parse/Serialize JSON
|
@@ -192,4 +248,3 @@ test_files:
|
|
192
248
|
- spec/support/configured_base_uri_resource.rb
|
193
249
|
- spec/support/test_resource.rb
|
194
250
|
- spec/support/test_singular_resource.rb
|
195
|
-
has_rdoc:
|