consul 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of consul might be problematic. Click here for more details.
- data/README.md +49 -2
- data/Rakefile +26 -6
- data/consul.gemspec +8 -7
- data/lib/consul.rb +1 -0
- data/lib/consul/active_record.rb +5 -1
- data/lib/consul/controller.rb +18 -11
- data/lib/consul/errors.rb +1 -0
- data/lib/consul/power.rb +29 -4
- data/lib/consul/version.rb +1 -1
- data/spec/rails-2.3/Gemfile +12 -0
- data/spec/rails-2.3/Rakefile +11 -0
- data/spec/{app_root → rails-2.3/app_root}/app/controllers/application_controller.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/controllers/cakes_controller.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/controllers/dashboards_controller.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/controllers/risks_controller.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/controllers/songs_controller.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/controllers/users_controller.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/models/client.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/models/note.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/app/models/power.rb +25 -1
- data/spec/{app_root → rails-2.3/app_root}/app/models/user.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/boot.rb +14 -0
- data/spec/{app_root → rails-2.3/app_root}/config/database.yml +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/environment.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/environments/in_memory.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/environments/mysql.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/environments/postgresql.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/environments/sqlite.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/config/environments/sqlite3.rb +0 -0
- data/spec/rails-2.3/app_root/config/preinitializer.rb +20 -0
- data/spec/{app_root → rails-2.3/app_root}/config/routes.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/db/migrate/001_create_users.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/db/migrate/002_create_clients.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/db/migrate/003_create_notes.rb +0 -0
- data/spec/{app_root → rails-2.3/app_root}/lib/console_with_fixtures.rb +0 -0
- data/spec/rails-2.3/app_root/log/.gitignore +1 -0
- data/spec/{app_root → rails-2.3/app_root}/script/console +0 -0
- data/spec/{rcov.opts → rails-2.3/rcov.opts} +0 -0
- data/spec/{spec.opts → rails-2.3/spec.opts} +0 -0
- data/spec/{spec_helper.rb → rails-2.3/spec_helper.rb} +9 -6
- data/spec/{consul → shared/consul}/active_record_spec.rb +0 -0
- data/spec/shared/consul/power_spec.rb +361 -0
- data/spec/{controllers → shared/controllers}/cakes_controller_spec.rb +1 -1
- data/spec/{controllers → shared/controllers}/dashboards_controller_spec.rb +1 -1
- data/spec/{controllers → shared/controllers}/risks_controller_spec.rb +1 -1
- data/spec/{controllers → shared/controllers}/songs_controller_spec.rb +1 -1
- data/spec/shared/controllers/users_controller_spec.rb +25 -0
- metadata +46 -119
- data/Gemfile +0 -3
- data/spec/consul/power_spec.rb +0 -127
- data/spec/controllers/users_controller_spec.rb +0 -13
- data/spec/support/spec.opts +0 -4
- data/spec/support/spec_candy.rb +0 -179
File without changes
|
@@ -0,0 +1,361 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Consul::Power do
|
4
|
+
|
5
|
+
before :each do
|
6
|
+
@user = User.create!
|
7
|
+
@deleted_client = Client.create!(:deleted => true)
|
8
|
+
@client1 = Client.create!
|
9
|
+
@client1_note1 = @client1.notes.create!
|
10
|
+
@client1_note2 = @client1.notes.create!
|
11
|
+
@client2 = Client.create!
|
12
|
+
@client2_note1 = @client2.notes.create!
|
13
|
+
@client2_note2 = @client2.notes.create!
|
14
|
+
end
|
15
|
+
|
16
|
+
describe 'integration scenario' do
|
17
|
+
|
18
|
+
it 'should work with real records' do
|
19
|
+
Client.active.should == [@client1, @client2]
|
20
|
+
@client1.notes.should == [@client1_note1, @client1_note2]
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
context 'scope powers' do
|
26
|
+
|
27
|
+
it 'should return the registered scope' do
|
28
|
+
@user.power.clients.all.should == [@client1, @client2]
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'should allow to register scopes with arguments' do
|
32
|
+
@user.power.client_notes(@client1).should == [@client1_note1, @client1_note2]
|
33
|
+
end
|
34
|
+
|
35
|
+
describe '#include?' do
|
36
|
+
|
37
|
+
context 'when no record is given' do
|
38
|
+
|
39
|
+
it 'should return true if the power returns a scope (which might or might not match records)' do
|
40
|
+
@user.power.clients?.should be_true
|
41
|
+
end
|
42
|
+
|
43
|
+
it 'should return false if the power returns nil' do
|
44
|
+
@user.role = 'guest'
|
45
|
+
@user.power.clients.should be_nil
|
46
|
+
@user.power.clients?.should be_false
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
context 'with a given record' do
|
52
|
+
|
53
|
+
it 'should return true if the record belongs to the scope' do
|
54
|
+
@user.power.client?(@client1).should be_true
|
55
|
+
end
|
56
|
+
|
57
|
+
it 'should return false if the record does not belong to the scope' do
|
58
|
+
@user.power.client?(@deleted_client).should be_false
|
59
|
+
end
|
60
|
+
|
61
|
+
it 'should only trigger a single query for multiple checks on the same scope' do
|
62
|
+
ActiveRecord::Base.connection.should_receive(:select_values).once.and_return([]) #.and_return(double('connection').as_null_object)
|
63
|
+
@user.power.client?(@client1)
|
64
|
+
@user.power.client?(@deleted_client)
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
71
|
+
describe '#include!' do
|
72
|
+
|
73
|
+
context 'when no record is given' do
|
74
|
+
|
75
|
+
it 'should raise Consul::Powerless when the power returns nil' do
|
76
|
+
@user.role = 'guest'
|
77
|
+
@user.power.clients.should be_nil
|
78
|
+
expect { @user.power.clients! }.to raise_error(Consul::Powerless)
|
79
|
+
end
|
80
|
+
|
81
|
+
it 'should not raise Consul::Powerless when the power returns a scope (which might or might not match records)' do
|
82
|
+
expect { @user.power.clients! }.to_not raise_error
|
83
|
+
end
|
84
|
+
|
85
|
+
end
|
86
|
+
|
87
|
+
context 'with a given record' do
|
88
|
+
|
89
|
+
it 'should raise Consul::Powerless when record belongs is inside the scope' do
|
90
|
+
expect { @user.power.client!(@deleted_client) }.to raise_error(Consul::Powerless)
|
91
|
+
end
|
92
|
+
|
93
|
+
it 'should not raise Consul::Powerless when the record is outside a scope' do
|
94
|
+
expect { @user.power.client!(@client1) }.to_not raise_error
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
|
99
|
+
end
|
100
|
+
|
101
|
+
describe 'retrieving scope_ids' do
|
102
|
+
|
103
|
+
it 'should return record ids that match the registered scope' do
|
104
|
+
@user.power.client_ids.should == [@client1.id, @client2.id]
|
105
|
+
end
|
106
|
+
|
107
|
+
it 'should cache scope ids' do
|
108
|
+
@user.power.should_receive(:clients).once.and_return(double('scope', :construct_finder_sql => 'SELECT 1').as_null_object)
|
109
|
+
2.times { @user.power.client_ids }
|
110
|
+
end
|
111
|
+
|
112
|
+
it 'should return ids when the scope joins another table (bugfix)' do
|
113
|
+
expect { @user.power.note_ids }.to_not raise_error
|
114
|
+
end
|
115
|
+
|
116
|
+
end
|
117
|
+
|
118
|
+
end
|
119
|
+
|
120
|
+
context 'collection powers' do
|
121
|
+
|
122
|
+
it 'should return the registered collection' do
|
123
|
+
@user.power.key_figures.should == %w[amount working_costs]
|
124
|
+
end
|
125
|
+
|
126
|
+
describe '#include?' do
|
127
|
+
|
128
|
+
context 'when no record is given' do
|
129
|
+
|
130
|
+
it 'should return true if the returns an enumerable (which might or might not be empty)' do
|
131
|
+
@user.power.key_figures?.should be_true
|
132
|
+
end
|
133
|
+
|
134
|
+
it 'should return false if the power returns nil' do
|
135
|
+
@user.role = 'guest'
|
136
|
+
@user.power.key_figures.should be_nil
|
137
|
+
@user.power.key_figures?.should be_false
|
138
|
+
end
|
139
|
+
|
140
|
+
end
|
141
|
+
|
142
|
+
context 'with a given record' do
|
143
|
+
|
144
|
+
it 'should return true if the power contains the given record' do
|
145
|
+
@user.power.key_figure?('amount').should be_true
|
146
|
+
end
|
147
|
+
|
148
|
+
it 'should return false if the power does not contain the given record' do
|
149
|
+
@user.power.key_figure?('xyz').should be_false
|
150
|
+
end
|
151
|
+
|
152
|
+
end
|
153
|
+
|
154
|
+
end
|
155
|
+
|
156
|
+
describe '#include!' do
|
157
|
+
|
158
|
+
context 'when no record is given' do
|
159
|
+
|
160
|
+
it 'should not raise Consul::Powerless if the power returns an enumerable (which might or might not be empty)' do
|
161
|
+
expect { @user.power.key_figures! }.to_not raise_error
|
162
|
+
end
|
163
|
+
|
164
|
+
it 'should raise Consul::Powerless if the power returns nil' do
|
165
|
+
@user.role = 'guest'
|
166
|
+
@user.power.key_figures.should be_nil
|
167
|
+
expect { @user.power.key_figures! }.to raise_error(Consul::Powerless)
|
168
|
+
end
|
169
|
+
|
170
|
+
end
|
171
|
+
|
172
|
+
context 'with a given record' do
|
173
|
+
|
174
|
+
it 'should not raise Consul::Powerless if the power contains the given record' do
|
175
|
+
expect { @user.power.key_figure?('amount') }.to_not raise_error
|
176
|
+
end
|
177
|
+
|
178
|
+
it 'should raise Consul::Powerless if the power does not contain the given record' do
|
179
|
+
expect { @user.power.key_figure!('xyz') }.to raise_error(Consul::Powerless)
|
180
|
+
end
|
181
|
+
end
|
182
|
+
|
183
|
+
end
|
184
|
+
|
185
|
+
end
|
186
|
+
|
187
|
+
context 'boolean powers' do
|
188
|
+
|
189
|
+
it 'should return the registered value' do
|
190
|
+
@user.power.always_true.should == true
|
191
|
+
@user.power.always_false.should == false
|
192
|
+
end
|
193
|
+
|
194
|
+
describe '#include?' do
|
195
|
+
|
196
|
+
context 'when no record is given' do
|
197
|
+
|
198
|
+
it 'should return true when the queried power returns true' do
|
199
|
+
@user.power.always_true?.should be_true
|
200
|
+
end
|
201
|
+
|
202
|
+
it 'should return false when the queried power returns false' do
|
203
|
+
@user.power.always_false?.should be_false
|
204
|
+
end
|
205
|
+
|
206
|
+
it 'should return false when the queried power returns nil' do
|
207
|
+
@user.power.always_nil?.should be_false
|
208
|
+
end
|
209
|
+
|
210
|
+
end
|
211
|
+
|
212
|
+
context 'with a given record' do
|
213
|
+
|
214
|
+
it 'should raise Consul::NoCollection' do
|
215
|
+
expect { @user.power.always_true?('foo') }.to raise_error(Consul::NoCollection)
|
216
|
+
end
|
217
|
+
|
218
|
+
end
|
219
|
+
|
220
|
+
end
|
221
|
+
|
222
|
+
describe '#include!' do
|
223
|
+
|
224
|
+
context 'when no record is given' do
|
225
|
+
|
226
|
+
it 'should not raise Consul::Powerless when the power returns true' do
|
227
|
+
expect { @user.power.always_true! }.to_not raise_error
|
228
|
+
end
|
229
|
+
|
230
|
+
it 'should raise Consul::Powerless when the power returns false' do
|
231
|
+
expect { @user.power.always_false! }.to raise_error(Consul::Powerless)
|
232
|
+
end
|
233
|
+
|
234
|
+
it 'should raise Consul::Powerless when the power returns nil' do
|
235
|
+
expect { @user.power.always_nil! }.to raise_error(Consul::Powerless)
|
236
|
+
end
|
237
|
+
|
238
|
+
end
|
239
|
+
|
240
|
+
context 'with a given record' do
|
241
|
+
|
242
|
+
it 'should raise Consul::NoCollection' do
|
243
|
+
expect { @user.power.always_true!('foo') }.to raise_error(Consul::NoCollection)
|
244
|
+
end
|
245
|
+
end
|
246
|
+
|
247
|
+
end
|
248
|
+
|
249
|
+
|
250
|
+
end
|
251
|
+
|
252
|
+
context 'powers of other types' do
|
253
|
+
|
254
|
+
it 'should return the registered value' do
|
255
|
+
@user.power.api_key.should == 'secret-api-key'
|
256
|
+
end
|
257
|
+
|
258
|
+
describe '#include?' do
|
259
|
+
|
260
|
+
context 'when no record is given' do
|
261
|
+
|
262
|
+
it 'should return true if the power is not nil' do
|
263
|
+
@user.power.api_key?.should be_true
|
264
|
+
end
|
265
|
+
|
266
|
+
it 'should return false if the power is nil' do
|
267
|
+
@user.role = 'guest'
|
268
|
+
@user.power.api_key.should be_nil
|
269
|
+
@user.power.api_key?.should be_false
|
270
|
+
end
|
271
|
+
|
272
|
+
end
|
273
|
+
|
274
|
+
context 'with a given record' do
|
275
|
+
|
276
|
+
it 'should raise Consul::NoCollection' do
|
277
|
+
expect { @user.power.api_key?('foo') }.to raise_error(Consul::NoCollection)
|
278
|
+
end
|
279
|
+
|
280
|
+
end
|
281
|
+
|
282
|
+
end
|
283
|
+
|
284
|
+
describe '#include!' do
|
285
|
+
|
286
|
+
context 'when no record is given' do
|
287
|
+
|
288
|
+
it 'should not raise Consul::Powerless if the power is not nil' do
|
289
|
+
expect { @user.power.api_key! }.to_not raise_error
|
290
|
+
end
|
291
|
+
|
292
|
+
it 'should raise Consul::powerless if the power is nil' do
|
293
|
+
@user.role = 'guest'
|
294
|
+
@user.power.api_key.should be_nil
|
295
|
+
expect { @user.power.api_key! }.to raise_error(Consul::Powerless)
|
296
|
+
end
|
297
|
+
|
298
|
+
end
|
299
|
+
|
300
|
+
context 'with a given record' do
|
301
|
+
|
302
|
+
it 'should raise Consul::NoCollection' do
|
303
|
+
expect { @user.power.api_key!('foo') }.to raise_error(Consul::NoCollection)
|
304
|
+
end
|
305
|
+
|
306
|
+
end
|
307
|
+
|
308
|
+
end
|
309
|
+
|
310
|
+
end
|
311
|
+
|
312
|
+
describe '.current' do
|
313
|
+
|
314
|
+
it 'should provide a class method to set and get the current Power' do
|
315
|
+
Power.current = 'current power'
|
316
|
+
Power.current.should == 'current power'
|
317
|
+
Power.current = nil
|
318
|
+
Power.current.should be_nil
|
319
|
+
end
|
320
|
+
|
321
|
+
end
|
322
|
+
|
323
|
+
describe '.with_power' do
|
324
|
+
|
325
|
+
it 'should provide the given power as current power for the duration of the block' do
|
326
|
+
spy = double
|
327
|
+
inner_power = Power.new('inner')
|
328
|
+
Power.current = 'outer power'
|
329
|
+
spy.should_receive(:observe).with(inner_power)
|
330
|
+
Power.with_power(inner_power) do
|
331
|
+
spy.observe(Power.current)
|
332
|
+
end
|
333
|
+
Power.current.should == 'outer power'
|
334
|
+
Power.current = nil # clean up for subsequent specs -- to bad we can't use .with_power :)
|
335
|
+
end
|
336
|
+
|
337
|
+
it 'should restore an existing power even if the block raises an error' do
|
338
|
+
begin
|
339
|
+
inner_power = Power.new('inner')
|
340
|
+
Power.current = 'outer power'
|
341
|
+
Power.with_power(inner_power) do
|
342
|
+
raise ZeroDivisionError
|
343
|
+
end
|
344
|
+
rescue ZeroDivisionError
|
345
|
+
# do nothing
|
346
|
+
end
|
347
|
+
Power.current.should == 'outer power'
|
348
|
+
end
|
349
|
+
|
350
|
+
it 'should call instantiate a new Power if the given argument is not already a power' do
|
351
|
+
spy = double
|
352
|
+
Power.should_receive(:new).with('argument').and_return('instantiated power')
|
353
|
+
spy.should_receive(:observe).with('instantiated power')
|
354
|
+
Power.with_power('argument') do
|
355
|
+
spy.observe(Power.current)
|
356
|
+
end
|
357
|
+
end
|
358
|
+
|
359
|
+
end
|
360
|
+
|
361
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe RisksController do
|
3
|
+
describe RisksController, :type => :controller do
|
4
4
|
|
5
5
|
it "should raise an error it includes Consul::Controller but forgets to define current_power do ... end" do
|
6
6
|
expect { put :show, :id => '1' }.to raise_error(Consul::UnreachablePower)
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe UsersController, :type => :controller do
|
4
|
+
|
5
|
+
it "should raise an error if the checked power is not given" do
|
6
|
+
expect { get :update, :id => '1' }.to raise_error(Consul::Powerless)
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'should allow to map actions to another power using the :map option' do
|
10
|
+
expect { get :show, :id => '1' }.to_not raise_error
|
11
|
+
end
|
12
|
+
|
13
|
+
|
14
|
+
describe '.power_name_for_action' do
|
15
|
+
|
16
|
+
it 'should return the name of the power for the given action (feature request from devolute)' do
|
17
|
+
UsersController.power_name_for_action(:show).should == :always_true
|
18
|
+
UsersController.power_name_for_action('show').should == :always_true
|
19
|
+
UsersController.power_name_for_action(:update).should == :always_false
|
20
|
+
UsersController.power_name_for_action('update').should == :always_false
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: consul
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 4
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 0.4.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Henning Koch
|
@@ -15,11 +15,11 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-
|
18
|
+
date: 2012-08-01 00:00:00 +02:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
|
-
|
22
|
+
name: memoizer
|
23
23
|
prerelease: false
|
24
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
25
|
none: false
|
@@ -30,10 +30,10 @@ dependencies:
|
|
30
30
|
segments:
|
31
31
|
- 0
|
32
32
|
version: "0"
|
33
|
-
|
33
|
+
type: :runtime
|
34
34
|
version_requirements: *id001
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
|
-
|
36
|
+
name: rails
|
37
37
|
prerelease: false
|
38
38
|
requirement: &id002 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
@@ -44,81 +44,8 @@ dependencies:
|
|
44
44
|
segments:
|
45
45
|
- 0
|
46
46
|
version: "0"
|
47
|
-
|
47
|
+
type: :runtime
|
48
48
|
version_requirements: *id002
|
49
|
-
- !ruby/object:Gem::Dependency
|
50
|
-
type: :development
|
51
|
-
prerelease: false
|
52
|
-
requirement: &id003 !ruby/object:Gem::Requirement
|
53
|
-
none: false
|
54
|
-
requirements:
|
55
|
-
- - ~>
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
hash: 5
|
58
|
-
segments:
|
59
|
-
- 2
|
60
|
-
- 3
|
61
|
-
version: "2.3"
|
62
|
-
name: rails
|
63
|
-
version_requirements: *id003
|
64
|
-
- !ruby/object:Gem::Dependency
|
65
|
-
type: :development
|
66
|
-
prerelease: false
|
67
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
68
|
-
none: false
|
69
|
-
requirements:
|
70
|
-
- - ~>
|
71
|
-
- !ruby/object:Gem::Version
|
72
|
-
hash: 9
|
73
|
-
segments:
|
74
|
-
- 1
|
75
|
-
- 3
|
76
|
-
version: "1.3"
|
77
|
-
name: rspec
|
78
|
-
version_requirements: *id004
|
79
|
-
- !ruby/object:Gem::Dependency
|
80
|
-
type: :development
|
81
|
-
prerelease: false
|
82
|
-
requirement: &id005 !ruby/object:Gem::Requirement
|
83
|
-
none: false
|
84
|
-
requirements:
|
85
|
-
- - ~>
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
hash: 9
|
88
|
-
segments:
|
89
|
-
- 1
|
90
|
-
- 3
|
91
|
-
version: "1.3"
|
92
|
-
name: rspec-rails
|
93
|
-
version_requirements: *id005
|
94
|
-
- !ruby/object:Gem::Dependency
|
95
|
-
type: :development
|
96
|
-
prerelease: false
|
97
|
-
requirement: &id006 !ruby/object:Gem::Requirement
|
98
|
-
none: false
|
99
|
-
requirements:
|
100
|
-
- - ">="
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
hash: 3
|
103
|
-
segments:
|
104
|
-
- 0
|
105
|
-
version: "0"
|
106
|
-
name: shoulda-matchers
|
107
|
-
version_requirements: *id006
|
108
|
-
- !ruby/object:Gem::Dependency
|
109
|
-
type: :development
|
110
|
-
prerelease: false
|
111
|
-
requirement: &id007 !ruby/object:Gem::Requirement
|
112
|
-
none: false
|
113
|
-
requirements:
|
114
|
-
- - ">="
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
hash: 3
|
117
|
-
segments:
|
118
|
-
- 0
|
119
|
-
version: "0"
|
120
|
-
name: sqlite3
|
121
|
-
version_requirements: *id007
|
122
49
|
description: A scope-based authorization solution for Ruby on Rails.
|
123
50
|
email: henning.koch@makandra.de
|
124
51
|
executables: []
|
@@ -129,7 +56,6 @@ extra_rdoc_files: []
|
|
129
56
|
|
130
57
|
files:
|
131
58
|
- .gitignore
|
132
|
-
- Gemfile
|
133
59
|
- README.md
|
134
60
|
- Rakefile
|
135
61
|
- consul.gemspec
|
@@ -140,43 +66,44 @@ files:
|
|
140
66
|
- lib/consul/power.rb
|
141
67
|
- lib/consul/spec/matchers.rb
|
142
68
|
- lib/consul/version.rb
|
143
|
-
- spec/
|
144
|
-
- spec/
|
145
|
-
- spec/app_root/app/controllers/
|
146
|
-
- spec/app_root/app/controllers/
|
147
|
-
- spec/app_root/app/controllers/
|
148
|
-
- spec/app_root/app/controllers/
|
149
|
-
- spec/app_root/app/
|
150
|
-
- spec/app_root/app/
|
151
|
-
- spec/app_root/app/models/
|
152
|
-
- spec/app_root/app/models/
|
153
|
-
- spec/app_root/
|
154
|
-
- spec/app_root/
|
155
|
-
- spec/app_root/config/
|
156
|
-
- spec/app_root/config/
|
157
|
-
- spec/app_root/config/
|
158
|
-
- spec/app_root/config/environments/
|
159
|
-
- spec/app_root/config/environments/
|
160
|
-
- spec/app_root/config/environments/
|
161
|
-
- spec/app_root/config/
|
162
|
-
- spec/app_root/
|
163
|
-
- spec/app_root/
|
164
|
-
- spec/app_root/
|
165
|
-
- spec/app_root/
|
166
|
-
- spec/app_root/
|
167
|
-
- spec/app_root/
|
168
|
-
- spec/
|
169
|
-
- spec/
|
170
|
-
- spec/
|
171
|
-
- spec/
|
172
|
-
- spec/
|
173
|
-
- spec/
|
174
|
-
- spec/
|
175
|
-
- spec/
|
176
|
-
- spec/
|
177
|
-
- spec/
|
178
|
-
- spec/
|
179
|
-
- spec/
|
69
|
+
- spec/rails-2.3/Gemfile
|
70
|
+
- spec/rails-2.3/Rakefile
|
71
|
+
- spec/rails-2.3/app_root/app/controllers/application_controller.rb
|
72
|
+
- spec/rails-2.3/app_root/app/controllers/cakes_controller.rb
|
73
|
+
- spec/rails-2.3/app_root/app/controllers/dashboards_controller.rb
|
74
|
+
- spec/rails-2.3/app_root/app/controllers/risks_controller.rb
|
75
|
+
- spec/rails-2.3/app_root/app/controllers/songs_controller.rb
|
76
|
+
- spec/rails-2.3/app_root/app/controllers/users_controller.rb
|
77
|
+
- spec/rails-2.3/app_root/app/models/client.rb
|
78
|
+
- spec/rails-2.3/app_root/app/models/note.rb
|
79
|
+
- spec/rails-2.3/app_root/app/models/power.rb
|
80
|
+
- spec/rails-2.3/app_root/app/models/user.rb
|
81
|
+
- spec/rails-2.3/app_root/config/boot.rb
|
82
|
+
- spec/rails-2.3/app_root/config/database.yml
|
83
|
+
- spec/rails-2.3/app_root/config/environment.rb
|
84
|
+
- spec/rails-2.3/app_root/config/environments/in_memory.rb
|
85
|
+
- spec/rails-2.3/app_root/config/environments/mysql.rb
|
86
|
+
- spec/rails-2.3/app_root/config/environments/postgresql.rb
|
87
|
+
- spec/rails-2.3/app_root/config/environments/sqlite.rb
|
88
|
+
- spec/rails-2.3/app_root/config/environments/sqlite3.rb
|
89
|
+
- spec/rails-2.3/app_root/config/preinitializer.rb
|
90
|
+
- spec/rails-2.3/app_root/config/routes.rb
|
91
|
+
- spec/rails-2.3/app_root/db/migrate/001_create_users.rb
|
92
|
+
- spec/rails-2.3/app_root/db/migrate/002_create_clients.rb
|
93
|
+
- spec/rails-2.3/app_root/db/migrate/003_create_notes.rb
|
94
|
+
- spec/rails-2.3/app_root/lib/console_with_fixtures.rb
|
95
|
+
- spec/rails-2.3/app_root/log/.gitignore
|
96
|
+
- spec/rails-2.3/app_root/script/console
|
97
|
+
- spec/rails-2.3/rcov.opts
|
98
|
+
- spec/rails-2.3/spec.opts
|
99
|
+
- spec/rails-2.3/spec_helper.rb
|
100
|
+
- spec/shared/consul/active_record_spec.rb
|
101
|
+
- spec/shared/consul/power_spec.rb
|
102
|
+
- spec/shared/controllers/cakes_controller_spec.rb
|
103
|
+
- spec/shared/controllers/dashboards_controller_spec.rb
|
104
|
+
- spec/shared/controllers/risks_controller_spec.rb
|
105
|
+
- spec/shared/controllers/songs_controller_spec.rb
|
106
|
+
- spec/shared/controllers/users_controller_spec.rb
|
180
107
|
has_rdoc: true
|
181
108
|
homepage: https://github.com/makandra/consul
|
182
109
|
licenses: []
|