save_queue 0.2.0 → 0.2.1
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/README.md +2 -1
- data/lib/save_queue/object.rb +6 -4
- data/lib/save_queue/version.rb +1 -1
- data/save_queue.gemspec +1 -1
- data/spec/save_queue_usage_spec.rb +37 -0
- metadata +16 -5
data/README.md
CHANGED
data/lib/save_queue/object.rb
CHANGED
@@ -1,15 +1,17 @@
|
|
1
1
|
require "save_queue/queue"
|
2
|
+
require 'active_support/core_ext/class/inheritable_attributes'
|
2
3
|
|
3
4
|
module SaveQueue
|
4
5
|
module Object
|
5
6
|
#class_inheritable_accessor :queue_class
|
6
7
|
def self.included base
|
7
8
|
base.class_eval do
|
8
|
-
|
9
|
-
|
10
|
-
|
9
|
+
class_inheritable_accessor :queue_class
|
10
|
+
#class<<self
|
11
|
+
# attr_accessor :queue_class
|
12
|
+
#end
|
11
13
|
|
12
|
-
self.queue_class
|
14
|
+
self.queue_class ||= Queue
|
13
15
|
end
|
14
16
|
end
|
15
17
|
|
data/lib/save_queue/version.rb
CHANGED
data/save_queue.gemspec
CHANGED
@@ -250,6 +250,43 @@ describe "SaveQueue usage" do
|
|
250
250
|
object.save_queue.should_not be_kind_of other
|
251
251
|
object.save_queue.should be_a SaveQueue::Queue
|
252
252
|
end
|
253
|
+
|
254
|
+
describe "inheritance" do
|
255
|
+
it "should inherit settings of parent class" do
|
256
|
+
klass = Class.new
|
257
|
+
klass.send :include, SaveQueue
|
258
|
+
|
259
|
+
klass.queue_class.should == SaveQueue::Queue
|
260
|
+
|
261
|
+
child = Class.new(klass)
|
262
|
+
child.queue_class.should == SaveQueue::Queue
|
263
|
+
end
|
264
|
+
|
265
|
+
it "should not override settings of parent class" do
|
266
|
+
klass = Class.new
|
267
|
+
klass.send :include, SaveQueue
|
268
|
+
klass.queue_class.should == SaveQueue::Queue
|
269
|
+
|
270
|
+
child = Class.new(klass)
|
271
|
+
child.queue_class = Integer
|
272
|
+
child.queue_class.should == Integer
|
273
|
+
|
274
|
+
klass.queue_class.should == SaveQueue::Queue
|
275
|
+
end
|
276
|
+
|
277
|
+
|
278
|
+
it "include SaveQueue should not override settings of parent class" do
|
279
|
+
klass = Class.new
|
280
|
+
klass.send :include, SaveQueue
|
281
|
+
klass.queue_class = Integer
|
282
|
+
|
283
|
+
klass.queue_class.should == Integer
|
284
|
+
|
285
|
+
child = Class.new(klass)
|
286
|
+
child.send :include, SaveQueue
|
287
|
+
child.queue_class.should == Integer
|
288
|
+
end
|
289
|
+
end
|
253
290
|
end
|
254
291
|
|
255
292
|
private
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: save_queue
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-11-16 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &21746380 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '2.6'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *21746380
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rake
|
27
|
-
requirement: &
|
27
|
+
requirement: &21745040 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,7 +32,18 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *21745040
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: active_support
|
38
|
+
requirement: &21742040 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
type: :runtime
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *21742040
|
36
47
|
description: Save Queue allows to push related objects to an object's queue for delayed
|
37
48
|
save, that will triggered on object#save. In this case object wil store all related
|
38
49
|
information on its save.
|