qwirk 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. data/History.md +5 -0
  2. data/lib/qwirk.rb +51 -10
  3. data/lib/qwirk/adapter/base/expanding_worker_config.rb +31 -18
  4. data/lib/qwirk/adapter/base/worker_config.rb +34 -11
  5. data/lib/qwirk/adapter/in_memory/publisher.rb +1 -1
  6. data/lib/qwirk/adapter/in_memory/queue.rb +27 -29
  7. data/lib/qwirk/adapter/in_memory/topic.rb +10 -12
  8. data/lib/qwirk/adapter/in_memory/worker.rb +9 -0
  9. data/lib/qwirk/adapter/in_memory/worker_config.rb +4 -0
  10. data/lib/qwirk/adapter/inline/worker.rb +4 -0
  11. data/lib/qwirk/adapter/inline/worker_config.rb +4 -0
  12. data/lib/qwirk/adapter_factory.rb +5 -1
  13. data/lib/qwirk/base_worker.rb +1 -5
  14. data/lib/qwirk/engine.rb +2 -6
  15. data/lib/qwirk/manager.rb +18 -10
  16. data/lib/qwirk/marshal_strategy/json.rb +1 -1
  17. data/lib/qwirk/remote_exception.rb +9 -1
  18. data/lib/qwirk/task.rb +61 -44
  19. data/lib/qwirk/worker.rb +16 -7
  20. data/test/dummy/README.rdoc +261 -0
  21. data/test/dummy/Rakefile +1 -1
  22. data/test/dummy/app/assets/javascripts/application.js +15 -0
  23. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  24. data/test/dummy/app/views/layouts/application.html.erb +3 -3
  25. data/test/dummy/config/application.rb +22 -8
  26. data/test/dummy/config/database.yml +3 -0
  27. data/test/dummy/config/environments/development.rb +15 -4
  28. data/test/dummy/config/environments/production.rb +31 -13
  29. data/test/dummy/config/environments/test.rb +9 -7
  30. data/test/dummy/config/initializers/inflections.rb +5 -0
  31. data/test/dummy/config/initializers/secret_token.rb +1 -1
  32. data/test/dummy/config/initializers/session_store.rb +1 -1
  33. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  34. data/test/dummy/config/locales/en.yml +1 -1
  35. data/test/dummy/config/routes.rb +2 -56
  36. data/test/dummy/public/500.html +0 -1
  37. data/test/dummy/script/rails +1 -1
  38. data/test/fixtures/qwirk/jobs.yml +11 -0
  39. data/test/functional/qwirk/jobs_controller_test.rb +9 -0
  40. data/test/{base_test.rb → models/base_worker_test.rb} +1 -4
  41. data/test/models/marshal_strategy_test.rb +61 -0
  42. data/test/{unit → models}/qwirk/batch/acquire_file_strategy_test.rb +0 -0
  43. data/test/{unit → models}/qwirk/batch/active_record/batch_job_test.rb +0 -0
  44. data/test/{unit → models}/qwirk/batch/parse_file_strategy_test.rb +0 -0
  45. data/test/test_helper.rb +7 -4
  46. data/test/unit/helpers/qwirk/jobs_helper_test.rb +6 -0
  47. data/test/unit/qwirk/job_test.rb +9 -0
  48. metadata +179 -117
  49. data/lib/qwirk/task.rb.sav +0 -194
  50. data/test/dummy/log/development.log +0 -0
  51. data/test/dummy/log/production.log +0 -0
  52. data/test/dummy/log/server.log +0 -0
  53. data/test/dummy/log/test.log +0 -0
  54. data/test/dummy/public/javascripts/application.js +0 -2
  55. data/test/dummy/public/javascripts/controls.js +0 -965
  56. data/test/dummy/public/javascripts/dragdrop.js +0 -974
  57. data/test/dummy/public/javascripts/effects.js +0 -1123
  58. data/test/dummy/public/javascripts/prototype.js +0 -6001
  59. data/test/dummy/public/javascripts/rails.js +0 -191
  60. data/test/marshal_strategy_test.rb +0 -62
@@ -1,7 +1,10 @@
1
1
  ENV["RAILS_ENV"] = "test"
2
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile", __FILE__)
3
+
4
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
5
+ $LOAD_PATH.unshift File.expand_path('..', __FILE__)
2
6
 
3
- require 'java'
4
7
  require 'rubygems'
5
- require 'test/unit'
6
- require 'shoulda'
7
- require 'qwirk'
8
+ require 'bundler/setup'
9
+ require 'qwirk'
10
+ require 'minitest/autorun'
@@ -0,0 +1,6 @@
1
+ require 'test_helper'
2
+
3
+ module Qwirk
4
+ class JobsHelperTest < ActionView::TestCase
5
+ end
6
+ end
@@ -0,0 +1,9 @@
1
+ require 'test_helper'
2
+
3
+ module Qwirk
4
+ class JobTest < ActiveSupport::TestCase
5
+ # test "the truth" do
6
+ # assert true
7
+ # end
8
+ end
9
+ end
metadata CHANGED
@@ -1,121 +1,171 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qwirk
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.1.0
4
+ version: 0.2.0
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Brad Pardee
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-31 00:00:00.000000000Z
12
+ date: 2012-09-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rumx
16
- version_requirements: &4196 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
17
18
  requirements:
18
19
  - - ! '>='
19
20
  - !ruby/object:Gem::Version
20
21
  version: 0.2.3
21
- none: false
22
- requirement: *4196
23
- prerelease: false
24
22
  type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.2.3
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: rack
27
- version_requirements: &4214 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
28
34
  requirements:
29
35
  - - ! '>='
30
36
  - !ruby/object:Gem::Version
31
37
  version: '0'
32
- none: false
33
- requirement: *4214
34
- prerelease: false
35
38
  type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rake
38
- version_requirements: &4230 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
39
50
  requirements:
40
51
  - - ! '>='
41
52
  - !ruby/object:Gem::Version
42
53
  version: '0'
43
- none: false
44
- requirement: *4230
45
- prerelease: false
46
54
  type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: rdoc
49
- version_requirements: &4248 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
50
66
  requirements:
51
67
  - - ! '>='
52
68
  - !ruby/object:Gem::Version
53
69
  version: '0'
54
- none: false
55
- requirement: *4248
56
- prerelease: false
57
70
  type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: bson
60
- version_requirements: &4264 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
61
82
  requirements:
62
83
  - - ! '>='
63
84
  - !ruby/object:Gem::Version
64
85
  version: '0'
65
- none: false
66
- requirement: *4264
86
+ type: :development
67
87
  prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: bson_ext
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
68
102
  type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
69
110
  - !ruby/object:Gem::Dependency
70
111
  name: json
71
- version_requirements: &4280 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
72
114
  requirements:
73
115
  - - ! '>='
74
116
  - !ruby/object:Gem::Version
75
117
  version: '0'
76
- none: false
77
- requirement: *4280
78
- prerelease: false
79
118
  type: :development
80
- - !ruby/object:Gem::Dependency
81
- name: shoulda
82
- version_requirements: &4296 !ruby/object:Gem::Requirement
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
83
122
  requirements:
84
123
  - - ! '>='
85
124
  - !ruby/object:Gem::Version
86
125
  version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: minitest
128
+ requirement: !ruby/object:Gem::Requirement
87
129
  none: false
88
- requirement: *4296
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ type: :development
89
135
  prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
143
+ name: turn
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
90
150
  type: :development
91
- description: Library for performing background tasks as well as asynchronous and parallel RPC calls
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ description: Library for performing background tasks as well as asynchronous and parallel
159
+ RPC calls
92
160
  email:
93
161
  - bradpardee@gmail.com
94
162
  executables: []
95
163
  extensions: []
96
164
  extra_rdoc_files: []
97
165
  files:
98
- - lib/qwirk.rb
99
- - lib/qwirk/adapter.rb
100
- - lib/qwirk/adapter_factory.rb
101
- - lib/qwirk/base_worker.rb
102
- - lib/qwirk/batch.rb
103
- - lib/qwirk/engine.rb
104
- - lib/qwirk/loggable.rb
105
- - lib/qwirk/manager.rb
106
- - lib/qwirk/marshal_strategy.rb
107
- - lib/qwirk/publish_handle.rb
108
- - lib/qwirk/publisher.rb
109
- - lib/qwirk/remote_exception.rb
110
- - lib/qwirk/reply_worker.rb
111
- - lib/qwirk/task.rb
112
- - lib/qwirk/task.rb.sav
113
- - lib/qwirk/worker.rb
114
- - lib/qwirk/adapter/base.rb
115
- - lib/qwirk/adapter/in_memory.rb
116
- - lib/qwirk/adapter/inline.rb
117
166
  - lib/qwirk/adapter/base/expanding_worker_config.rb
118
167
  - lib/qwirk/adapter/base/worker_config.rb
168
+ - lib/qwirk/adapter/base.rb
119
169
  - lib/qwirk/adapter/in_memory/factory.rb
120
170
  - lib/qwirk/adapter/in_memory/publisher.rb
121
171
  - lib/qwirk/adapter/in_memory/queue.rb
@@ -123,24 +173,41 @@ files:
123
173
  - lib/qwirk/adapter/in_memory/topic.rb
124
174
  - lib/qwirk/adapter/in_memory/worker.rb
125
175
  - lib/qwirk/adapter/in_memory/worker_config.rb
176
+ - lib/qwirk/adapter/in_memory.rb
126
177
  - lib/qwirk/adapter/inline/publisher.rb
127
178
  - lib/qwirk/adapter/inline/worker.rb
128
179
  - lib/qwirk/adapter/inline/worker_config.rb
180
+ - lib/qwirk/adapter/inline.rb
181
+ - lib/qwirk/adapter.rb
182
+ - lib/qwirk/adapter_factory.rb
183
+ - lib/qwirk/base_worker.rb
129
184
  - lib/qwirk/batch/acquire_file_strategy.rb
185
+ - lib/qwirk/batch/active_record/batch_job.rb
186
+ - lib/qwirk/batch/active_record/failed_record.rb
187
+ - lib/qwirk/batch/active_record/outstanding_record.rb
130
188
  - lib/qwirk/batch/active_record.rb
131
189
  - lib/qwirk/batch/file_status_strategy.rb
132
190
  - lib/qwirk/batch/file_worker.rb
133
191
  - lib/qwirk/batch/job_status.rb
134
192
  - lib/qwirk/batch/parse_file_strategy.rb
135
- - lib/qwirk/batch/active_record/batch_job.rb
136
- - lib/qwirk/batch/active_record/failed_record.rb
137
- - lib/qwirk/batch/active_record/outstanding_record.rb
193
+ - lib/qwirk/batch.rb
194
+ - lib/qwirk/engine.rb
195
+ - lib/qwirk/loggable.rb
196
+ - lib/qwirk/manager.rb
138
197
  - lib/qwirk/marshal_strategy/bson.rb
139
198
  - lib/qwirk/marshal_strategy/json.rb
140
199
  - lib/qwirk/marshal_strategy/none.rb
141
200
  - lib/qwirk/marshal_strategy/ruby.rb
142
201
  - lib/qwirk/marshal_strategy/string.rb
143
202
  - lib/qwirk/marshal_strategy/yaml.rb
203
+ - lib/qwirk/marshal_strategy.rb
204
+ - lib/qwirk/publish_handle.rb
205
+ - lib/qwirk/publisher.rb
206
+ - lib/qwirk/remote_exception.rb
207
+ - lib/qwirk/reply_worker.rb
208
+ - lib/qwirk/task.rb
209
+ - lib/qwirk/worker.rb
210
+ - lib/qwirk.rb
144
211
  - lib/rails/generators/qwirk/qwirk_generator.rb
145
212
  - lib/rails/generators/qwirk/templates/initializer.rb
146
213
  - lib/rails/generators/qwirk/templates/migration.rb
@@ -151,19 +218,9 @@ files:
151
218
  - Rakefile
152
219
  - History.md
153
220
  - README.md
154
- - test/base_test.rb
155
221
  - test/database.yml
156
- - test/jms.yml
157
- - test/jms_fail_test.rb
158
- - test/jms_requestor_block_test.rb
159
- - test/jms_requestor_test.rb
160
- - test/jms_test.rb
161
- - test/marshal_strategy_test.rb
162
- - test/test_helper.rb
163
- - test/test_helper.rbold
164
- - test/test_helper_active_record.rb
165
- - test/dummy/config.ru
166
- - test/dummy/Rakefile
222
+ - test/dummy/app/assets/javascripts/application.js
223
+ - test/dummy/app/assets/stylesheets/application.css
167
224
  - test/dummy/app/controllers/application_controller.rb
168
225
  - test/dummy/app/helpers/application_helper.rb
169
226
  - test/dummy/app/views/layouts/application.html.erb
@@ -171,7 +228,6 @@ files:
171
228
  - test/dummy/config/boot.rb
172
229
  - test/dummy/config/database.yml
173
230
  - test/dummy/config/environment.rb
174
- - test/dummy/config/routes.rb
175
231
  - test/dummy/config/environments/development.rb
176
232
  - test/dummy/config/environments/production.rb
177
233
  - test/dummy/config/environments/test.rb
@@ -180,71 +236,70 @@ files:
180
236
  - test/dummy/config/initializers/mime_types.rb
181
237
  - test/dummy/config/initializers/secret_token.rb
182
238
  - test/dummy/config/initializers/session_store.rb
239
+ - test/dummy/config/initializers/wrap_parameters.rb
183
240
  - test/dummy/config/locales/en.yml
184
- - test/dummy/log/development.log
185
- - test/dummy/log/production.log
186
- - test/dummy/log/server.log
187
- - test/dummy/log/test.log
241
+ - test/dummy/config/routes.rb
242
+ - test/dummy/config.ru
188
243
  - test/dummy/public/404.html
189
244
  - test/dummy/public/422.html
190
245
  - test/dummy/public/500.html
191
246
  - test/dummy/public/favicon.ico
192
- - test/dummy/public/javascripts/application.js
193
- - test/dummy/public/javascripts/controls.js
194
- - test/dummy/public/javascripts/dragdrop.js
195
- - test/dummy/public/javascripts/effects.js
196
- - test/dummy/public/javascripts/prototype.js
197
- - test/dummy/public/javascripts/rails.js
247
+ - test/dummy/Rakefile
248
+ - test/dummy/README.rdoc
198
249
  - test/dummy/script/rails
250
+ - test/fixtures/qwirk/jobs.yml
251
+ - test/functional/qwirk/jobs_controller_test.rb
199
252
  - test/integration/navigation_test.rb
253
+ - test/jms.yml
254
+ - test/jms_fail_test.rb
255
+ - test/jms_requestor_block_test.rb
256
+ - test/jms_requestor_test.rb
257
+ - test/jms_test.rb
258
+ - test/models/base_worker_test.rb
259
+ - test/models/marshal_strategy_test.rb
260
+ - test/models/qwirk/batch/acquire_file_strategy_test.rb
261
+ - test/models/qwirk/batch/active_record/batch_job_test.rb
262
+ - test/models/qwirk/batch/parse_file_strategy_test.rb
200
263
  - test/support/integration_case.rb
201
- - test/unit/qwirk/batch/acquire_file_strategy_test.rb
202
- - test/unit/qwirk/batch/parse_file_strategy_test.rb
203
- - test/unit/qwirk/batch/active_record/batch_job_test.rb
264
+ - test/test_helper.rb
265
+ - test/test_helper.rbold
266
+ - test/test_helper_active_record.rb
267
+ - test/unit/helpers/qwirk/jobs_helper_test.rb
268
+ - test/unit/qwirk/job_test.rb
204
269
  homepage: http://github.com/ClarityServices/qwirk
205
270
  licenses: []
206
- post_install_message:
271
+ post_install_message:
207
272
  rdoc_options: []
208
273
  require_paths:
209
274
  - lib
210
275
  required_ruby_version: !ruby/object:Gem::Requirement
276
+ none: false
211
277
  requirements:
212
278
  - - ! '>='
213
279
  - !ruby/object:Gem::Version
280
+ version: '0'
214
281
  segments:
215
282
  - 0
216
- hash: 2
217
- version: '0'
218
- none: false
283
+ hash: 1786109374960622570
219
284
  required_rubygems_version: !ruby/object:Gem::Requirement
285
+ none: false
220
286
  requirements:
221
287
  - - ! '>='
222
288
  - !ruby/object:Gem::Version
289
+ version: '0'
223
290
  segments:
224
291
  - 0
225
- hash: 2
226
- version: '0'
227
- none: false
292
+ hash: 1786109374960622570
228
293
  requirements: []
229
- rubyforge_project:
230
- rubygems_version: 1.8.15
231
- signing_key:
294
+ rubyforge_project:
295
+ rubygems_version: 1.8.23
296
+ signing_key:
232
297
  specification_version: 3
233
298
  summary: Background task and Asynchronous RPC library
234
299
  test_files:
235
- - test/base_test.rb
236
300
  - test/database.yml
237
- - test/jms.yml
238
- - test/jms_fail_test.rb
239
- - test/jms_requestor_block_test.rb
240
- - test/jms_requestor_test.rb
241
- - test/jms_test.rb
242
- - test/marshal_strategy_test.rb
243
- - test/test_helper.rb
244
- - test/test_helper.rbold
245
- - test/test_helper_active_record.rb
246
- - test/dummy/config.ru
247
- - test/dummy/Rakefile
301
+ - test/dummy/app/assets/javascripts/application.js
302
+ - test/dummy/app/assets/stylesheets/application.css
248
303
  - test/dummy/app/controllers/application_controller.rb
249
304
  - test/dummy/app/helpers/application_helper.rb
250
305
  - test/dummy/app/views/layouts/application.html.erb
@@ -252,7 +307,6 @@ test_files:
252
307
  - test/dummy/config/boot.rb
253
308
  - test/dummy/config/database.yml
254
309
  - test/dummy/config/environment.rb
255
- - test/dummy/config/routes.rb
256
310
  - test/dummy/config/environments/development.rb
257
311
  - test/dummy/config/environments/production.rb
258
312
  - test/dummy/config/environments/test.rb
@@ -261,25 +315,33 @@ test_files:
261
315
  - test/dummy/config/initializers/mime_types.rb
262
316
  - test/dummy/config/initializers/secret_token.rb
263
317
  - test/dummy/config/initializers/session_store.rb
318
+ - test/dummy/config/initializers/wrap_parameters.rb
264
319
  - test/dummy/config/locales/en.yml
265
- - test/dummy/log/development.log
266
- - test/dummy/log/production.log
267
- - test/dummy/log/server.log
268
- - test/dummy/log/test.log
320
+ - test/dummy/config/routes.rb
321
+ - test/dummy/config.ru
269
322
  - test/dummy/public/404.html
270
323
  - test/dummy/public/422.html
271
324
  - test/dummy/public/500.html
272
325
  - test/dummy/public/favicon.ico
273
- - test/dummy/public/javascripts/application.js
274
- - test/dummy/public/javascripts/controls.js
275
- - test/dummy/public/javascripts/dragdrop.js
276
- - test/dummy/public/javascripts/effects.js
277
- - test/dummy/public/javascripts/prototype.js
278
- - test/dummy/public/javascripts/rails.js
326
+ - test/dummy/Rakefile
327
+ - test/dummy/README.rdoc
279
328
  - test/dummy/script/rails
329
+ - test/fixtures/qwirk/jobs.yml
330
+ - test/functional/qwirk/jobs_controller_test.rb
280
331
  - test/integration/navigation_test.rb
332
+ - test/jms.yml
333
+ - test/jms_fail_test.rb
334
+ - test/jms_requestor_block_test.rb
335
+ - test/jms_requestor_test.rb
336
+ - test/jms_test.rb
337
+ - test/models/base_worker_test.rb
338
+ - test/models/marshal_strategy_test.rb
339
+ - test/models/qwirk/batch/acquire_file_strategy_test.rb
340
+ - test/models/qwirk/batch/active_record/batch_job_test.rb
341
+ - test/models/qwirk/batch/parse_file_strategy_test.rb
281
342
  - test/support/integration_case.rb
282
- - test/unit/qwirk/batch/acquire_file_strategy_test.rb
283
- - test/unit/qwirk/batch/parse_file_strategy_test.rb
284
- - test/unit/qwirk/batch/active_record/batch_job_test.rb
285
- ...
343
+ - test/test_helper.rb
344
+ - test/test_helper.rbold
345
+ - test/test_helper_active_record.rb
346
+ - test/unit/helpers/qwirk/jobs_helper_test.rb
347
+ - test/unit/qwirk/job_test.rb