diff options
author | stoodfarback <stoodfarback@gmail.com> | 2018-09-07 21:55:05 -0700 |
---|---|---|
committer | stoodfarback <stoodfarback@gmail.com> | 2018-09-07 21:55:05 -0700 |
commit | fc4e7d44c8cd9e0521fbd259ec241c4ba56f1db7 (patch) | |
tree | 0e28d5c6e92bd4e74d598ff6efac8b36a2f6677c /activejob/test/integration | |
parent | 273e73dbcdf82748237173f9cff3352bf74b4753 (diff) | |
download | rails-fc4e7d44c8cd9e0521fbd259ec241c4ba56f1db7.tar.gz rails-fc4e7d44c8cd9e0521fbd259ec241c4ba56f1db7.tar.bz2 rails-fc4e7d44c8cd9e0521fbd259ec241c4ba56f1db7.zip |
ActiveJob Backburner adapter: fix priority
The priority wasn't being passed from ActiveJob to Backburner, despite
priority being supported. This also brings it inline with the docs,
which mark Backburner as supporting priorities in the "Backend Features"
table: https://api.rubyonrails.org/classes/ActiveJob/QueueAdapters.html
Diffstat (limited to 'activejob/test/integration')
-rw-r--r-- | activejob/test/integration/queuing_test.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/activejob/test/integration/queuing_test.rb b/activejob/test/integration/queuing_test.rb index 32afb5ca62..96253773c7 100644 --- a/activejob/test/integration/queuing_test.rb +++ b/activejob/test/integration/queuing_test.rb @@ -137,4 +137,16 @@ class QueuingTest < ActiveSupport::TestCase assert job_executed "#{@id}.2" assert job_executed_at("#{@id}.2") < job_executed_at("#{@id}.1") end + + test "should run job with higher priority first in Backburner" do + skip unless adapter_is?(:backburner) + + jobs_manager.tube.pause(3) + TestJob.set(priority: 20).perform_later "#{@id}.1" + TestJob.set(priority: 10).perform_later "#{@id}.2" + wait_for_jobs_to_finish_for(10.seconds) + assert job_executed "#{@id}.1" + assert job_executed "#{@id}.2" + assert job_executed_at("#{@id}.2") < job_executed_at("#{@id}.1") + end end |