wireframe-resque_unit 0.4.1.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.
@@ -0,0 +1,167 @@
1
+ class LowPriorityJob
2
+ @queue = :low
3
+ @run = false
4
+ def self.perform
5
+ self.run = true
6
+ end
7
+
8
+ def self.run?
9
+ @run
10
+ end
11
+
12
+ def self.run=(value)
13
+ @run = value
14
+ end
15
+ end
16
+
17
+ class MediumPriorityJob
18
+ def self.queue
19
+ :medium
20
+ end
21
+ end
22
+
23
+ class HighPriorityJob
24
+ @queue = :high
25
+
26
+ def self.perform
27
+ end
28
+ end
29
+
30
+ class JobWithArguments
31
+ @queue = :medium
32
+
33
+ def self.perform(num, text, hash)
34
+
35
+ end
36
+ end
37
+
38
+ class JobThatCreatesANewJob
39
+ @queue = :spawn
40
+
41
+ def self.perform
42
+ Resque.enqueue(LowPriorityJob)
43
+ end
44
+ end
45
+
46
+ class JobThatDoesNotSpecifyAQueue
47
+
48
+ def self.perform
49
+ end
50
+ end
51
+
52
+ module HooksMethods
53
+ def after_enqueue_mark(*args)
54
+ markers[:after_enqueue] = true
55
+ end
56
+
57
+ def before_enqueue_mark(*args)
58
+ markers[:before_enqueue] = true
59
+ end
60
+
61
+ def after_perform_mark(*args)
62
+ markers[:after] = true
63
+ end
64
+
65
+ def failure_perform_mark(*args)
66
+ markers[:failure] = true
67
+ end
68
+ end
69
+
70
+ class JobWithHooks
71
+ extend HooksMethods
72
+
73
+ @queue = :with_hooks
74
+ @markers = {}
75
+
76
+ def self.perform
77
+ raise 'FAIL!' if @will_fail
78
+ end
79
+
80
+ def self.markers
81
+ @markers
82
+ end
83
+
84
+ def self.clear_markers
85
+ @markers = {}
86
+ end
87
+
88
+ def self.before_perform_mark(*args)
89
+ markers[:before] = true
90
+ end
91
+
92
+ def self.around_perform_mark(*args)
93
+ markers[:around] = true
94
+ if @dont_perform
95
+ raise Resque::Job::DontPerform
96
+ else
97
+ yield
98
+ end
99
+ end
100
+
101
+ def self.make_it_fail(&block)
102
+ @will_fail = true
103
+ yield
104
+ ensure
105
+ @will_fail = false
106
+ end
107
+
108
+ def self.make_it_dont_perform(&block)
109
+ @dont_perform = true
110
+ ensure
111
+ @dont_perform = false
112
+ end
113
+ end
114
+
115
+ class JobWithHooksBeforeBlocks < JobWithHooks
116
+ @queue = :with_hooks
117
+ def self.before_enqueue_block_enqueueing
118
+ return false
119
+ end
120
+ end
121
+
122
+ class JobWithHooksWithoutBefore
123
+ extend HooksMethods
124
+
125
+ @queue = :with_hooks
126
+ @markers = {}
127
+
128
+ def self.markers
129
+ @markers
130
+ end
131
+
132
+ def self.clear_markers
133
+ @markers = {}
134
+ end
135
+
136
+ def self.perform; end
137
+
138
+ def self.around_perform_mark(*args)
139
+ markers[:around] = true
140
+ if @dont_perform
141
+ raise Resque::Job::DontPerform
142
+ else
143
+ yield
144
+ end
145
+ end
146
+ end
147
+
148
+ class JobWithHooksWithoutAround
149
+ extend HooksMethods
150
+
151
+ @queue = :with_hooks
152
+ @markers = {}
153
+
154
+ def self.markers
155
+ @markers
156
+ end
157
+
158
+ def self.clear_markers
159
+ @markers = {}
160
+ end
161
+
162
+ def self.perform; end
163
+
164
+ def self.before_perform_mark(*args)
165
+ markers[:before] = true
166
+ end
167
+ end
@@ -0,0 +1,9 @@
1
+ require 'rubygems'
2
+ require 'shoulda'
3
+ require 'resque_unit'
4
+ require 'sample_jobs'
5
+
6
+ # Fix shoulda under 1.9.2. See https://github.com/thoughtbot/shoulda/issues/issue/117
7
+ unless defined?(Test::Unit::AssertionFailedError)
8
+ Test::Unit::AssertionFailedError = MiniTest::Assertion
9
+ end
metadata ADDED
@@ -0,0 +1,96 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: wireframe-resque_unit
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.1.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Justin Weiss
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-03-06 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: json
16
+ requirement: &2155702920 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 1.4.6
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *2155702920
25
+ - !ruby/object:Gem::Dependency
26
+ name: bundler
27
+ requirement: &2155702520 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *2155702520
36
+ - !ruby/object:Gem::Dependency
37
+ name: shoulda
38
+ requirement: &2155702060 !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: *2155702060
47
+ description:
48
+ email: justin@uberweiss.org
49
+ executables: []
50
+ extensions: []
51
+ extra_rdoc_files:
52
+ - README.md
53
+ files:
54
+ - lib/resque_unit/assertions.rb
55
+ - lib/resque_unit/errors.rb
56
+ - lib/resque_unit/helpers.rb
57
+ - lib/resque_unit/plugin.rb
58
+ - lib/resque_unit/resque.rb
59
+ - lib/resque_unit/scheduler.rb
60
+ - lib/resque_unit/scheduler_assertions.rb
61
+ - lib/resque_unit.rb
62
+ - lib/resque_unit_scheduler.rb
63
+ - test/resque_test.rb
64
+ - test/resque_unit_scheduler_test.rb
65
+ - test/resque_unit_test.rb
66
+ - test/sample_jobs.rb
67
+ - test/test_helper.rb
68
+ - README.md
69
+ homepage: http://github.com/justinweiss/resque_unit
70
+ licenses: []
71
+ post_install_message:
72
+ rdoc_options: []
73
+ require_paths:
74
+ - lib
75
+ required_ruby_version: !ruby/object:Gem::Requirement
76
+ none: false
77
+ requirements:
78
+ - - ! '>='
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
+ none: false
83
+ requirements:
84
+ - - ! '>='
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
87
+ requirements: []
88
+ rubyforge_project:
89
+ rubygems_version: 1.8.15
90
+ signing_key:
91
+ specification_version: 3
92
+ summary: Test::Unit support for resque job queueing
93
+ test_files:
94
+ - test/resque_test.rb
95
+ - test/resque_unit_scheduler_test.rb
96
+ - test/resque_unit_test.rb