live_resource-rails 0.0.1 → 0.0.3
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 +7 -0
- data/.ruby-version +1 -1
- data/Gemfile +1 -1
- data/lib/live_resource/rails/controller_dsl.rb +5 -4
- data/lib/live_resource/rails/version.rb +1 -1
- data/live_resource-rails.gemspec +4 -3
- data/spec/live_resource/rails/controller_dsl_spec.rb +6 -20
- metadata +40 -46
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 57c5b5c74a9195516fd1086c17b94b2546c9ffb1
|
4
|
+
data.tar.gz: 9117fc270cd8114c64fa16f2ea1640bd5bb9be9a
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 620c5f9897a9bd56652df229615c2d556f535840727e1841eb9b5cf2dca8368ea3bea86af2ca41162a5de4d37275a0b360db0b07dae93a73d2923768654d8cc7
|
7
|
+
data.tar.gz: c3f65fece3cfe40b2fabdfde1367765970192586177749366f1180f1cebc246af3fdd88a823ef4ccb402f1216619a887f74cfb832941e0d5383d5e836c6a2a56
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby-1.
|
1
|
+
ruby-2.1.1
|
data/Gemfile
CHANGED
@@ -20,7 +20,7 @@ module LiveResource
|
|
20
20
|
raise 'You must set config.live_resource.dependency_types (e.g. in application.rb)' unless dependency_types
|
21
21
|
|
22
22
|
# Set up the builder
|
23
|
-
builder = Builder.new(resource_identifier, protocol, dependency_types, Module.new do
|
23
|
+
builder = LiveResource::Builder.new(resource_identifier, protocol, dependency_types, Module.new do
|
24
24
|
# TODO: This is added for convenience, so that in the execution scope of the identifier block we'll have
|
25
25
|
# access to path helpers. This needs to be refactored into something more elegant.
|
26
26
|
include ::Rails.application.routes.url_helpers
|
@@ -35,14 +35,15 @@ module LiveResource
|
|
35
35
|
# Grab the result
|
36
36
|
resource = builder.resource
|
37
37
|
|
38
|
-
# Create a method on the controller to allow access to the Resource
|
39
|
-
self
|
38
|
+
# Create a static method on the controller to allow access to the Resource
|
39
|
+
eigenclass = class << self; self; end
|
40
|
+
eigenclass.instance_eval do
|
40
41
|
define_method(:"#{resource.name}_resource", Proc.new { resource })
|
41
42
|
end
|
42
43
|
|
43
44
|
# Create a helper method to allow views to access the resource ID
|
44
45
|
ActionController::Base.helper do
|
45
|
-
define_method(:"live_#{
|
46
|
+
define_method(:"live_#{resource.name}_id") do |*context|
|
46
47
|
resource.identifier(*context)
|
47
48
|
end
|
48
49
|
end
|
data/live_resource-rails.gemspec
CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Will Madden"]
|
10
10
|
spec.email = ["will@letsgeddit.com"]
|
11
11
|
spec.description = %q{Convenience methods for using LiveResource in Rails applications}
|
12
|
-
spec.summary = %q{
|
13
|
-
spec.homepage = ""
|
12
|
+
spec.summary = %q{live_resource Rails extension}
|
13
|
+
spec.homepage = "https://github.com/live-resource/rails"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
16
|
spec.files = `git ls-files`.split($/)
|
@@ -18,7 +18,8 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_dependency "rails"
|
21
|
+
spec.add_dependency "rails-observers"
|
22
|
+
spec.add_dependency "rails"
|
22
23
|
spec.add_dependency 'live_resource'
|
23
24
|
|
24
25
|
spec.add_development_dependency "bundler", "~> 1.3"
|
@@ -28,7 +28,7 @@ describe LiveResource::Rails::ControllerDSL do
|
|
28
28
|
|
29
29
|
subject do
|
30
30
|
b = block # let'ed methods are lost in the scope of the proc
|
31
|
-
controller_class.class_eval
|
31
|
+
controller_class.class_eval { live_resource(:some_thing, &b) }
|
32
32
|
end
|
33
33
|
|
34
34
|
let(:controller) { DummyController.new }
|
@@ -44,7 +44,6 @@ describe LiveResource::Rails::ControllerDSL do
|
|
44
44
|
|
45
45
|
before do
|
46
46
|
LiveResource::Builder.stub(:new).and_return(builder)
|
47
|
-
ActionController::Base.stub(:helper)
|
48
47
|
end
|
49
48
|
|
50
49
|
context 'when live resource is not configured' do
|
@@ -108,29 +107,16 @@ describe LiveResource::Rails::ControllerDSL do
|
|
108
107
|
subject
|
109
108
|
end
|
110
109
|
|
111
|
-
it "should define a
|
112
|
-
controller_class.should_receive(:define_method).with(:"#{resource.name}_resource", instance_of(Proc))
|
110
|
+
it "should define a static method on the controller class to access the resource instance" do
|
113
111
|
subject
|
114
|
-
|
115
|
-
|
116
|
-
describe "the method" do
|
117
|
-
before do
|
118
|
-
_proc = nil
|
119
|
-
controller_class.stub(:define_method) { |name, proc| _proc = proc }
|
120
|
-
subject
|
121
|
-
@proc = _proc
|
122
|
-
end
|
123
|
-
|
124
|
-
let(:method) { @proc }
|
125
|
-
|
126
|
-
it 'should return the resource' do
|
127
|
-
expect(method.call).to be resource
|
128
|
-
end
|
112
|
+
expect(controller_class.send :"#{resource.name}_resource").to be resource
|
129
113
|
end
|
130
114
|
|
131
115
|
it "should define a helper method for the identifier" do
|
132
|
-
|
116
|
+
resource_id = '123'
|
117
|
+
resource.stub(identifier: resource_id)
|
133
118
|
subject
|
119
|
+
expect(ActionController::Base.helpers.send(:"live_#{resource.name}_id")).to eq resource_id
|
134
120
|
end
|
135
121
|
|
136
122
|
context 'when the block defines some dependencies' do
|
metadata
CHANGED
@@ -1,110 +1,111 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: live_resource-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.3
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Will Madden
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-04-14 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rails-observers
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
14
27
|
- !ruby/object:Gem::Dependency
|
15
28
|
name: rails
|
16
29
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
30
|
requirements:
|
19
|
-
- -
|
31
|
+
- - ">="
|
20
32
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
33
|
+
version: '0'
|
22
34
|
type: :runtime
|
23
35
|
prerelease: false
|
24
36
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
37
|
requirements:
|
27
|
-
- -
|
38
|
+
- - ">="
|
28
39
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
40
|
+
version: '0'
|
30
41
|
- !ruby/object:Gem::Dependency
|
31
42
|
name: live_resource
|
32
43
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
44
|
requirements:
|
35
|
-
- -
|
45
|
+
- - ">="
|
36
46
|
- !ruby/object:Gem::Version
|
37
47
|
version: '0'
|
38
48
|
type: :runtime
|
39
49
|
prerelease: false
|
40
50
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
51
|
requirements:
|
43
|
-
- -
|
52
|
+
- - ">="
|
44
53
|
- !ruby/object:Gem::Version
|
45
54
|
version: '0'
|
46
55
|
- !ruby/object:Gem::Dependency
|
47
56
|
name: bundler
|
48
57
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
58
|
requirements:
|
51
|
-
- - ~>
|
59
|
+
- - "~>"
|
52
60
|
- !ruby/object:Gem::Version
|
53
61
|
version: '1.3'
|
54
62
|
type: :development
|
55
63
|
prerelease: false
|
56
64
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
65
|
requirements:
|
59
|
-
- - ~>
|
66
|
+
- - "~>"
|
60
67
|
- !ruby/object:Gem::Version
|
61
68
|
version: '1.3'
|
62
69
|
- !ruby/object:Gem::Dependency
|
63
70
|
name: rake
|
64
71
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
72
|
requirements:
|
67
|
-
- -
|
73
|
+
- - ">="
|
68
74
|
- !ruby/object:Gem::Version
|
69
75
|
version: '0'
|
70
76
|
type: :development
|
71
77
|
prerelease: false
|
72
78
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
79
|
requirements:
|
75
|
-
- -
|
80
|
+
- - ">="
|
76
81
|
- !ruby/object:Gem::Version
|
77
82
|
version: '0'
|
78
83
|
- !ruby/object:Gem::Dependency
|
79
84
|
name: rspec
|
80
85
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
86
|
requirements:
|
83
|
-
- -
|
87
|
+
- - ">="
|
84
88
|
- !ruby/object:Gem::Version
|
85
89
|
version: '0'
|
86
90
|
type: :development
|
87
91
|
prerelease: false
|
88
92
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
93
|
requirements:
|
91
|
-
- -
|
94
|
+
- - ">="
|
92
95
|
- !ruby/object:Gem::Version
|
93
96
|
version: '0'
|
94
97
|
- !ruby/object:Gem::Dependency
|
95
98
|
name: sqlite3
|
96
99
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
100
|
requirements:
|
99
|
-
- -
|
101
|
+
- - ">="
|
100
102
|
- !ruby/object:Gem::Version
|
101
103
|
version: '0'
|
102
104
|
type: :development
|
103
105
|
prerelease: false
|
104
106
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
107
|
requirements:
|
107
|
-
- -
|
108
|
+
- - ">="
|
108
109
|
- !ruby/object:Gem::Version
|
109
110
|
version: '0'
|
110
111
|
description: Convenience methods for using LiveResource in Rails applications
|
@@ -114,9 +115,9 @@ executables: []
|
|
114
115
|
extensions: []
|
115
116
|
extra_rdoc_files: []
|
116
117
|
files:
|
117
|
-
- .gitignore
|
118
|
-
- .ruby-gemset
|
119
|
-
- .ruby-version
|
118
|
+
- ".gitignore"
|
119
|
+
- ".ruby-gemset"
|
120
|
+
- ".ruby-version"
|
120
121
|
- Gemfile
|
121
122
|
- LICENSE.txt
|
122
123
|
- README.md
|
@@ -128,37 +129,30 @@ files:
|
|
128
129
|
- live_resource-rails.gemspec
|
129
130
|
- spec/live_resource/rails/controller_dsl_spec.rb
|
130
131
|
- spec/spec_helper.rb
|
131
|
-
homepage:
|
132
|
+
homepage: https://github.com/live-resource/rails
|
132
133
|
licenses:
|
133
134
|
- MIT
|
135
|
+
metadata: {}
|
134
136
|
post_install_message:
|
135
137
|
rdoc_options: []
|
136
138
|
require_paths:
|
137
139
|
- lib
|
138
140
|
required_ruby_version: !ruby/object:Gem::Requirement
|
139
|
-
none: false
|
140
141
|
requirements:
|
141
|
-
- -
|
142
|
+
- - ">="
|
142
143
|
- !ruby/object:Gem::Version
|
143
144
|
version: '0'
|
144
|
-
segments:
|
145
|
-
- 0
|
146
|
-
hash: 1742430517839249327
|
147
145
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
148
|
-
none: false
|
149
146
|
requirements:
|
150
|
-
- -
|
147
|
+
- - ">="
|
151
148
|
- !ruby/object:Gem::Version
|
152
149
|
version: '0'
|
153
|
-
segments:
|
154
|
-
- 0
|
155
|
-
hash: 1742430517839249327
|
156
150
|
requirements: []
|
157
151
|
rubyforge_project:
|
158
|
-
rubygems_version:
|
152
|
+
rubygems_version: 2.2.2
|
159
153
|
signing_key:
|
160
|
-
specification_version:
|
161
|
-
summary:
|
154
|
+
specification_version: 4
|
155
|
+
summary: live_resource Rails extension
|
162
156
|
test_files:
|
163
157
|
- spec/live_resource/rails/controller_dsl_spec.rb
|
164
158
|
- spec/spec_helper.rb
|