File tree Expand file tree Collapse file tree 3 files changed +13
-0
lines changed
Expand file tree Collapse file tree 3 files changed +13
-0
lines changed Original file line number Diff line number Diff line change @@ -274,6 +274,7 @@ def enqueue(klass, *args)
274274 #
275275 # This method is considered part of the `stable` API.
276276 def enqueue_to ( queue , klass , *args )
277+ validate ( klass , queue )
277278 # Perform before_enqueue hooks. Don't perform enqueue if any hook returns false
278279 before_hooks = Plugin . before_enqueue_hooks ( klass ) . collect do |hook |
279280 klass . send ( hook , *args )
Original file line number Diff line number Diff line change @@ -113,6 +113,12 @@ def save
113113 end
114114end
115115
116+ class JobWithNoQueue
117+ def self . perform
118+ "I don't have a queue."
119+ end
120+ end
121+
116122def with_failure_backend ( failure_backend , &block )
117123 previous_backend = Resque ::Failure . backend
118124 Resque ::Failure . backend = failure_backend
Original file line number Diff line number Diff line change 3434 assert_match ( 'uninitialized constant' , Resque ::Failure . all [ 'error' ] )
3535 end
3636
37+ it "validates jobs before enquing them." do
38+ assert_raises Resque ::NoQueueError do
39+ Resque . enqueue ( JobWithNoQueue )
40+ end
41+ end
42+
3743 it "does not allow exceptions from failure backend to escape" do
3844 job = Resque ::Job . new ( :jobs , { } )
3945 with_failure_backend BadFailureBackend do
You can’t perform that action at this time.
0 commit comments