save_queue 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -116,7 +116,8 @@ Note: Today Save Queue use only #save method to perform save actions on an objec
116
116
 
117
117
  Requirements
118
118
  ------------
119
- none, rspec2 for testing
119
+ ActiveSupport
120
+ rspec2 for testing
120
121
 
121
122
  Compatibility
122
123
  -------------
@@ -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
- class<<self
9
- attr_accessor :queue_class
10
- end
9
+ class_inheritable_accessor :queue_class
10
+ #class<<self
11
+ # attr_accessor :queue_class
12
+ #end
11
13
 
12
- self.queue_class = Queue
14
+ self.queue_class ||= Queue
13
15
  end
14
16
  end
15
17
 
@@ -1,3 +1,3 @@
1
1
  module SaveQueue
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
data/save_queue.gemspec CHANGED
@@ -21,5 +21,5 @@ Gem::Specification.new do |s|
21
21
  # specify any dependencies here; for example:
22
22
  s.add_development_dependency "rspec", ">= 2.6"
23
23
  s.add_development_dependency "rake"
24
- # s.add_runtime_dependency "rest-client"
24
+ s.add_runtime_dependency "active_support"
25
25
  end
@@ -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.0
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: &5065560 !ruby/object:Gem::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: *5065560
24
+ version_requirements: *21746380
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rake
27
- requirement: &5059980 !ruby/object:Gem::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: *5059980
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.