restful_resource 0.0.10 → 0.0.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/restful_resource/base.rb +8 -6
- data/lib/restful_resource/version.rb +1 -1
- data/spec/restful_resource/base_spec.rb +6 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eb0baa3d62df8c2cf76abb026cf3f3d66f9cdd01
|
4
|
+
data.tar.gz: 0e623b12bc7f5ea6add379f80ece6eb88f91c2a0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e98a1b3a5b2d105c6cd520bd3c456b7cdeeef58c0993be275bfa6d90d9bad41ed701d17099268f0eb2a0787948bb1d32ff8bcf23658bd925ca5ffc91171546f8
|
7
|
+
data.tar.gz: cce5a8ea9f6a743e4e0c2f65954426d744ab03584fb26274dcb4c814124a0f518aa8c9f5005222769191683f35f60b669d8d2fb6273f6b384ce2e379fb39cbcc
|
@@ -5,25 +5,27 @@ module RestfulResource
|
|
5
5
|
end
|
6
6
|
|
7
7
|
def self.processed_url_and_params(params={})
|
8
|
-
|
8
|
+
uri = URI(@url)
|
9
|
+
path = uri.path
|
9
10
|
other_params = params.clone
|
10
11
|
missing_params = []
|
11
12
|
|
12
|
-
|
13
|
-
|
13
|
+
path_params = path.scan(/:([A-Za-z][^\/]*)/).flatten
|
14
|
+
path_params.each do |key|
|
14
15
|
value = other_params.delete(key.to_sym)
|
15
16
|
if value.nil?
|
16
17
|
missing_params << key
|
17
18
|
else
|
18
|
-
|
19
|
+
path = path.gsub(':'+key.to_s, value.to_s)
|
19
20
|
end
|
20
21
|
end
|
21
22
|
|
22
23
|
if missing_params.any?
|
23
24
|
raise ParameterMissingError.new(missing_params)
|
24
25
|
end
|
25
|
-
|
26
|
-
|
26
|
+
|
27
|
+
uri.path = path
|
28
|
+
[uri.to_s, other_params]
|
27
29
|
end
|
28
30
|
|
29
31
|
def self.url(params={})
|
@@ -49,6 +49,12 @@ describe RestfulResource::Base do
|
|
49
49
|
|
50
50
|
expect { Player.url(team_id: 13) }.not_to raise_error
|
51
51
|
end
|
52
|
+
|
53
|
+
it "should not substitue parameters in the http auth part of the url" do
|
54
|
+
Player.url = 'http://admin:secret@api.carwow.co.uk:7000/teams/:team_id/players'
|
55
|
+
|
56
|
+
expect { Player.url(team_id: 13) }.not_to raise_error
|
57
|
+
end
|
52
58
|
end
|
53
59
|
|
54
60
|
context "#all" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: restful_resource
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Santoro
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-10-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -149,7 +149,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
149
149
|
version: '0'
|
150
150
|
requirements: []
|
151
151
|
rubyforge_project:
|
152
|
-
rubygems_version: 2.
|
152
|
+
rubygems_version: 2.4.1
|
153
153
|
signing_key:
|
154
154
|
specification_version: 4
|
155
155
|
summary: A simple activerecord inspired rest resource base class implemented using
|