Skip to content

Commit

Permalink
Merge pull request #19482 from mperham/master
Browse files Browse the repository at this point in the history
Pass wrapped class name to Sidekiq for logging purposes
  • Loading branch information
rafaelfranca committed Mar 23, 2015
1 parent 0e2e9e2 commit 94249d4
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
2 changes: 2 additions & 0 deletions activejob/lib/active_job/queue_adapters/sidekiq_adapter.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@ def enqueue(job) #:nodoc:
#Sidekiq::Client does not support symbols as keys
Sidekiq::Client.push \
'class' => JobWrapper,
'wrapped' => job.class.to_s,
'queue' => job.queue_name,
'args' => [ job.serialize ]
end

def enqueue_at(job, timestamp) #:nodoc:
Sidekiq::Client.push \
'class' => JobWrapper,
'wrapped' => job.class.to_s,
'queue' => job.queue_name,
'args' => [ job.serialize ],
'at' => timestamp
Expand Down
13 changes: 13 additions & 0 deletions activejob/test/integration/queuing_test.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
require 'helper'
require 'jobs/logging_job'
require 'jobs/hello_job'
require 'active_support/core_ext/numeric/time'

class QueuingTest < ActiveSupport::TestCase
Expand All @@ -23,6 +24,18 @@ class QueuingTest < ActiveSupport::TestCase
end
end

test 'should supply a wrapped class name to Sidekiq' do
skip unless adapter_is?(:sidekiq)
require 'sidekiq/testing'

Sidekiq::Testing.fake! do
::HelloJob.perform_later
hash = ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper.jobs.first
assert_equal "ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper", hash['class']
assert_equal "HelloJob", hash['wrapped']
end
end

test 'should not run job enqueued in the future' do
begin
TestJob.set(wait: 10.minutes).perform_later @id
Expand Down

0 comments on commit 94249d4

Please sign in to comment.