resque_spec 0.9.3 → 0.10.0
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 +26 -0
- data/lib/resque_spec.rb +1 -0
- data/lib/resque_spec/ext.rb +19 -0
- data/lib/resque_spec/helpers.rb +10 -0
- data/lib/resque_spec/scheduler.rb +19 -0
- data/lib/resque_spec/version.rb +1 -1
- metadata +23 -12
data/README.md
CHANGED
@@ -99,6 +99,31 @@ You can check the size of the queue in your specs too.
|
|
99
99
|
end
|
100
100
|
end
|
101
101
|
|
102
|
+
Turning off ResqueSpec and calling directly to Resque
|
103
|
+
-----------------------------------------------------
|
104
|
+
|
105
|
+
Occasionally, you want to run your specs directly against Resque instead of
|
106
|
+
ResqueSpec. For one at a time use, pass a block to the `without_resque_spec`
|
107
|
+
helper:
|
108
|
+
|
109
|
+
describe "#recalculate" do
|
110
|
+
it "recalculates the persons score" do
|
111
|
+
without_resque_spec do
|
112
|
+
person.recalculate
|
113
|
+
end
|
114
|
+
... assert recalculation after job done
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
Or you can manage when ResqueSpec is disabled by flipping the
|
119
|
+
`ResqueSpec.disable_ext` flag:
|
120
|
+
|
121
|
+
# disable ResqueSpec
|
122
|
+
ResqueSpec.disable_ext = true
|
123
|
+
|
124
|
+
You will most likely (but not always, see the Resque docs) need to ensure that
|
125
|
+
you have `redis` running.
|
126
|
+
|
102
127
|
ResqueMailer with Specs
|
103
128
|
=======================
|
104
129
|
|
@@ -317,6 +342,7 @@ Contributors
|
|
317
342
|
* (@alexeits) : fix matcher in bug with RSpec 2.8.0
|
318
343
|
* (@ToadJamb) : encode/decode of Resque job arguments
|
319
344
|
* Mateusz Konikowski (@mkonikowski) : support for anything matcher
|
345
|
+
* Mathieu Ravaux (@mathieuravaux) : without_resque_spec support
|
320
346
|
|
321
347
|
Copyright
|
322
348
|
=========
|
data/lib/resque_spec.rb
CHANGED
data/lib/resque_spec/ext.rb
CHANGED
@@ -2,13 +2,22 @@ require 'resque'
|
|
2
2
|
|
3
3
|
module Resque
|
4
4
|
class Job
|
5
|
+
class << self
|
6
|
+
alias :create_without_resque_spec :create
|
7
|
+
alias :destroy_without_resque_spec :destroy
|
8
|
+
end
|
9
|
+
|
5
10
|
def self.create(queue, klass, *args)
|
11
|
+
return create_without_resque_spec(queue, klass, *args) if ResqueSpec.disable_ext
|
12
|
+
|
6
13
|
raise ::Resque::NoQueueError.new("Jobs must be placed onto a queue.") if !queue
|
7
14
|
raise ::Resque::NoClassError.new("Jobs must be given a class.") if klass.to_s.empty?
|
8
15
|
ResqueSpec.enqueue(queue, klass, *args)
|
9
16
|
end
|
10
17
|
|
11
18
|
def self.destroy(queue, klass, *args)
|
19
|
+
return destroy_without_resque_spec(queue, klass, *args) if ResqueSpec.disable_ext
|
20
|
+
|
12
21
|
raise ::Resque::NoQueueError.new("Jobs must have been placed onto a queue.") if !queue
|
13
22
|
raise ::Resque::NoClassError.new("Jobs must have been given a class.") if klass.to_s.empty?
|
14
23
|
|
@@ -20,11 +29,19 @@ module Resque
|
|
20
29
|
end
|
21
30
|
end
|
22
31
|
|
32
|
+
alias :enqueue_without_resque_spec :enqueue
|
33
|
+
alias :enqueue_to_without_resque_spec :enqueue_to if Resque.respond_to? :enqueue_to
|
34
|
+
alias :reserve_without_resque_spec :reserve
|
35
|
+
|
23
36
|
def enqueue(klass, *args)
|
37
|
+
return enqueue_without_resque_spec(klass, *args) if ResqueSpec.disable_ext
|
38
|
+
|
24
39
|
enqueue_to(queue_from_class(klass), klass, *args)
|
25
40
|
end
|
26
41
|
|
27
42
|
def enqueue_to(queue, klass, *args)
|
43
|
+
return enqueue_to_without_resque_spec(queue, klass, *args) if ResqueSpec.disable_ext
|
44
|
+
|
28
45
|
if ResqueSpec.inline
|
29
46
|
return if run_before_enqueue(klass, *args)
|
30
47
|
run_after_enqueue(klass, *args)
|
@@ -38,6 +55,8 @@ module Resque
|
|
38
55
|
end
|
39
56
|
|
40
57
|
def reserve(queue_name)
|
58
|
+
return reserve_without_resque_spec(queue_name) if ResqueSpec.disable_ext
|
59
|
+
|
41
60
|
ResqueSpec.pop(queue_name)
|
42
61
|
end
|
43
62
|
|
data/lib/resque_spec/helpers.rb
CHANGED
@@ -2,15 +2,34 @@ require 'resque_spec'
|
|
2
2
|
|
3
3
|
module ResqueSpec
|
4
4
|
module SchedulerExt
|
5
|
+
def self.extended(klass)
|
6
|
+
if klass.respond_to? :enqueue_at
|
7
|
+
klass.instance_eval do
|
8
|
+
alias :enqueue_at_without_resque_spec :enqueue_at
|
9
|
+
alias :enqueue_in_without_resque_spec :enqueue_in
|
10
|
+
alias :remove_delayed_without_resque_spec :remove_delayed
|
11
|
+
end
|
12
|
+
end
|
13
|
+
klass.extend(ResqueSpec::SchedulerExtMethods)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
module SchedulerExtMethods
|
5
18
|
def enqueue_at(time, klass, *args)
|
19
|
+
return enqueue_at_without_resque_spec(time, klass, *args) if ResqueSpec.disable_ext && respond_to?(:enqueue_at_without_resque_spec)
|
20
|
+
|
6
21
|
ResqueSpec.enqueue_at(time, klass, *args)
|
7
22
|
end
|
8
23
|
|
9
24
|
def enqueue_in(time, klass, *args)
|
25
|
+
return enqueue_in_without_resque_spec(time, klass, *args) if ResqueSpec.disable_ext && respond_to?(:enqueue_in_without_resque_spec)
|
26
|
+
|
10
27
|
ResqueSpec.enqueue_in(time, klass, *args)
|
11
28
|
end
|
12
29
|
|
13
30
|
def remove_delayed(klass, *args)
|
31
|
+
return remove_delayed_without_resque_spec(klass, *args) if ResqueSpec.disable_ext && respond_to?(:remove_delayed_without_resque_spec)
|
32
|
+
|
14
33
|
ResqueSpec.remove_delayed(klass, *args)
|
15
34
|
end
|
16
35
|
end
|
data/lib/resque_spec/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: resque_spec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-16 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: resque
|
16
|
-
requirement: &
|
16
|
+
requirement: &70234346214680 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 1.19.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70234346214680
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &70234346213660 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,21 @@ dependencies:
|
|
32
32
|
version: 2.5.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70234346213660
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: resque-scheduler
|
38
|
+
requirement: &70234346212620 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
type: :development
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *70234346212620
|
36
47
|
- !ruby/object:Gem::Dependency
|
37
48
|
name: ruby-debug19
|
38
|
-
requirement: &
|
49
|
+
requirement: &70234346211520 !ruby/object:Gem::Requirement
|
39
50
|
none: false
|
40
51
|
requirements:
|
41
52
|
- - ! '>='
|
@@ -43,10 +54,10 @@ dependencies:
|
|
43
54
|
version: '0'
|
44
55
|
type: :development
|
45
56
|
prerelease: false
|
46
|
-
version_requirements: *
|
57
|
+
version_requirements: *70234346211520
|
47
58
|
- !ruby/object:Gem::Dependency
|
48
59
|
name: timecop
|
49
|
-
requirement: &
|
60
|
+
requirement: &70234346210280 !ruby/object:Gem::Requirement
|
50
61
|
none: false
|
51
62
|
requirements:
|
52
63
|
- - ! '>='
|
@@ -54,10 +65,10 @@ dependencies:
|
|
54
65
|
version: '0'
|
55
66
|
type: :development
|
56
67
|
prerelease: false
|
57
|
-
version_requirements: *
|
68
|
+
version_requirements: *70234346210280
|
58
69
|
- !ruby/object:Gem::Dependency
|
59
70
|
name: rake
|
60
|
-
requirement: &
|
71
|
+
requirement: &70234346209180 !ruby/object:Gem::Requirement
|
61
72
|
none: false
|
62
73
|
requirements:
|
63
74
|
- - ! '>='
|
@@ -65,7 +76,7 @@ dependencies:
|
|
65
76
|
version: '0'
|
66
77
|
type: :development
|
67
78
|
prerelease: false
|
68
|
-
version_requirements: *
|
79
|
+
version_requirements: *70234346209180
|
69
80
|
description: RSpec matchers for Resque
|
70
81
|
email: leshill@gmail.com
|
71
82
|
executables: []
|