restfulness 0.2.5 → 0.2.6
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.
- checksums.yaml +4 -4
- data/README.md +17 -0
- data/lib/restfulness/router.rb +3 -1
- data/lib/restfulness/version.rb +1 -1
- data/spec/unit/router_spec.rb +15 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4c6d3884753e3b58d9c9d459a633f5973de4b5f2
|
4
|
+
data.tar.gz: 7694025035531b633586bbb361978b543c37a532
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc2abb03ebf2caea3f7f2e528b19917bbb7d7144c4f4ddc78ee5e8469c0aa53c2a2f45b8d4865b21ca21ffbfaa4c10072864358361238b92eb0b9b84cf7b21d9
|
7
|
+
data.tar.gz: ae4f3c662aeb5b5e78a331fc5225d27289727ccc22c22f8d957d89e6178d7dfd262aaa65d45a301d3ae14dfa74b6f7fbf2580f222f7adc5aa9f3dddeab41df68
|
data/README.md
CHANGED
@@ -188,6 +188,19 @@ routes do
|
|
188
188
|
end
|
189
189
|
```
|
190
190
|
|
191
|
+
The `add` router method can also except a block which will be interpreted as a scope. The following example will provide the same paths as the `journeys` scope and resource defined above. The most important factor to take into account is that the `Journeys::ListResource` will be added to the route **after** the `active` and `terminated` resources. Order is important!
|
192
|
+
|
193
|
+
```ruby
|
194
|
+
routes do
|
195
|
+
scope 'api' do
|
196
|
+
add 'journeys', Journeys::ListResource do
|
197
|
+
add 'active', Journeys::ActiveResource
|
198
|
+
add 'terminated', Journeys::TerminatedResource
|
199
|
+
end
|
200
|
+
end
|
201
|
+
end
|
202
|
+
```
|
203
|
+
|
191
204
|
|
192
205
|
### Resources
|
193
206
|
|
@@ -605,6 +618,10 @@ Restfulness is still a work in progress but at Cabify we are using it in product
|
|
605
618
|
|
606
619
|
## History
|
607
620
|
|
621
|
+
### 0.2.6 - March 7, 2014
|
622
|
+
|
623
|
+
* Support scope block when adding a resource to router. (@samlown)
|
624
|
+
|
608
625
|
### 0.2.5 - March 7, 2014
|
609
626
|
|
610
627
|
* Added support for scope in routes. (@samlown)
|
data/lib/restfulness/router.rb
CHANGED
@@ -11,7 +11,9 @@ module Restfulness
|
|
11
11
|
instance_eval(&block) if block_given?
|
12
12
|
end
|
13
13
|
|
14
|
-
def add(*args)
|
14
|
+
def add(*args, &block)
|
15
|
+
# Do we need to pretend we've been given a scope?
|
16
|
+
scope(*args[0..-2], &block) if block_given?
|
15
17
|
routes << Route.new(*(current_scope + args))
|
16
18
|
end
|
17
19
|
|
data/lib/restfulness/version.rb
CHANGED
data/spec/unit/router_spec.rb
CHANGED
@@ -6,6 +6,9 @@ describe Restfulness::Router do
|
|
6
6
|
class RouterResource < Restfulness::Resource
|
7
7
|
end
|
8
8
|
|
9
|
+
class SecondRouterResource < Restfulness::Resource
|
10
|
+
end
|
11
|
+
|
9
12
|
let :klass do
|
10
13
|
Restfulness::Router
|
11
14
|
end
|
@@ -39,6 +42,18 @@ describe Restfulness::Router do
|
|
39
42
|
route.should be_a(Restfulness::Route)
|
40
43
|
route.path.should eql(['projects'])
|
41
44
|
end
|
45
|
+
it "should accept block as scope" do
|
46
|
+
obj = klass.new
|
47
|
+
obj.add 'project', RouterResource do
|
48
|
+
add 'examples', SecondRouterResource
|
49
|
+
end
|
50
|
+
route = obj.routes.first
|
51
|
+
route.resource.should eql(RouterResource)
|
52
|
+
route.path.should eql(['project', 'examples'])
|
53
|
+
route = obj.routes.last
|
54
|
+
route.resource.should eql(SecondRouterResource)
|
55
|
+
route.path.should eql(['project'])
|
56
|
+
end
|
42
57
|
end
|
43
58
|
|
44
59
|
describe "#scope" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: restfulness
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sam Lown
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-03-
|
11
|
+
date: 2014-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|