resque_spec 0.4.1 → 0.4.2
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 +37 -0
- data/lib/resque_spec/helpers.rb +28 -0
- data/lib/resque_spec/resque_spec.rb +1 -0
- data/lib/resque_spec/version.rb +1 -1
- data/lib/resque_spec.rb +5 -3
- metadata +3 -2
data/README.md
CHANGED
@@ -120,6 +120,43 @@ You can check the size of the queue in your specs too.
|
|
120
120
|
end
|
121
121
|
end
|
122
122
|
|
123
|
+
Performing Jobs in Specs
|
124
|
+
------------------------
|
125
|
+
|
126
|
+
Normally, Resque does not perform queued jobs within tests. You may want to
|
127
|
+
make assertions based on the result of your jobs. To process jobs immediately,
|
128
|
+
you can pass a block to the `with_resque` helper:
|
129
|
+
|
130
|
+
Given this scenario
|
131
|
+
|
132
|
+
Given a game
|
133
|
+
When I score
|
134
|
+
Then the game has a score
|
135
|
+
|
136
|
+
I might write this as a Cucumber step
|
137
|
+
|
138
|
+
When /I score/ do
|
139
|
+
with_resque do
|
140
|
+
visit game_path
|
141
|
+
click_link 'Score!'
|
142
|
+
end
|
143
|
+
end
|
144
|
+
|
145
|
+
Or I write this spec using the `with_resque` helper
|
146
|
+
|
147
|
+
describe "#score!" do
|
148
|
+
before do
|
149
|
+
ResqueSpec.reset!
|
150
|
+
end
|
151
|
+
|
152
|
+
it "increases the score" do
|
153
|
+
with_resque do
|
154
|
+
game.score!
|
155
|
+
end
|
156
|
+
game.score.should == 10
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
123
160
|
Note on Patches/Pull Requests
|
124
161
|
=============================
|
125
162
|
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module ResqueSpec
|
2
|
+
module Helpers
|
3
|
+
|
4
|
+
def with_resque
|
5
|
+
enable_perform
|
6
|
+
yield
|
7
|
+
disable_perform
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def enable_perform
|
13
|
+
::Resque.module_eval do
|
14
|
+
def self.enqueue(klass, *args)
|
15
|
+
klass.perform(*args)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def disable_perform
|
21
|
+
::Resque.module_eval do
|
22
|
+
def self.enqueue(klass, *args)
|
23
|
+
ResqueSpec::Resque.enqueue(klass, *args)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/resque_spec/version.rb
CHANGED
data/lib/resque_spec.rb
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
require 'resque_spec/resque_spec'
|
2
2
|
require 'resque_spec/resque_scheduler_spec'
|
3
|
+
require 'resque_spec/helpers'
|
3
4
|
|
4
|
-
|
5
|
-
|
6
|
-
|
5
|
+
config = RSpec.configuration
|
6
|
+
config.include ResqueSpec::Helpers
|
7
|
+
|
8
|
+
World(ResqueSpec::Helpers) if defined?(Cucumber)
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 4
|
8
|
-
-
|
9
|
-
version: 0.4.
|
8
|
+
- 2
|
9
|
+
version: 0.4.2
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Les Hill
|
@@ -58,6 +58,7 @@ extensions: []
|
|
58
58
|
extra_rdoc_files: []
|
59
59
|
|
60
60
|
files:
|
61
|
+
- lib/resque_spec/helpers.rb
|
61
62
|
- lib/resque_spec/resque_scheduler_spec.rb
|
62
63
|
- lib/resque_spec/resque_spec.rb
|
63
64
|
- lib/resque_spec/version.rb
|