diff options
author | Jeremy Kemper <jeremykemper@gmail.com> | 2014-08-18 13:26:49 -0700 |
---|---|---|
committer | Jeremy Kemper <jeremykemper@gmail.com> | 2014-08-18 13:26:49 -0700 |
commit | 77de1d6edb07f8428f73fca691cccb7889e55c26 (patch) | |
tree | 3974316eb80ca42be8d929cbf5318a4ac6215222 /activejob | |
parent | abeaf514d0f82fae67f496cde872f5e172b7903a (diff) | |
parent | 68c643f8e70084d89f7bddff2b863b6b83411f4a (diff) | |
download | rails-77de1d6edb07f8428f73fca691cccb7889e55c26.tar.gz rails-77de1d6edb07f8428f73fca691cccb7889e55c26.tar.bz2 rails-77de1d6edb07f8428f73fca691cccb7889e55c26.zip |
Merge pull request #16539 from seuros/activejob
[ActiveJob] Add queue_name_prefix
Diffstat (limited to 'activejob')
-rw-r--r-- | activejob/lib/active_job/queue_name.rb | 5 | ||||
-rw-r--r-- | activejob/test/cases/queue_naming_test.rb | 15 |
2 files changed, 19 insertions, 1 deletions
diff --git a/activejob/lib/active_job/queue_name.rb b/activejob/lib/active_job/queue_name.rb index c2186d9fe9..9698835b6e 100644 --- a/activejob/lib/active_job/queue_name.rb +++ b/activejob/lib/active_job/queue_name.rb @@ -3,10 +3,13 @@ module ActiveJob extend ActiveSupport::Concern module ClassMethods + mattr_accessor(:queue_name_prefix) mattr_accessor(:default_queue_name) { "default" } def queue_as(part_name) - self.queue_name = part_name.to_s.presence || default_queue_name + queue_name = part_name.to_s.presence || default_queue_name + name_parts = [queue_name_prefix.presence, queue_name] + self.queue_name = name_parts.compact.join('_') end end diff --git a/activejob/test/cases/queue_naming_test.rb b/activejob/test/cases/queue_naming_test.rb index 426af608f0..fdfd1afceb 100644 --- a/activejob/test/cases/queue_naming_test.rb +++ b/activejob/test/cases/queue_naming_test.rb @@ -20,4 +20,19 @@ class QueueNamingTest < ActiveSupport::TestCase HelloJob.queue_name = LoggingJob.queue_name = ActiveJob::Base.default_queue_name end end + + test 'should prefix the queue name' do + begin + original_queue_name_prefix = ActiveJob::Base.queue_name_prefix + original_queue_name = HelloJob.queue_name + + ActiveJob::Base.queue_name_prefix = 'aj' + HelloJob.queue_as :low + assert_equal 'aj_low', HelloJob.queue_name + ensure + ActiveJob::Base.queue_name_prefix = original_queue_name_prefix + HelloJob.queue_name = original_queue_name + end + end + end |