From 52d131826e46d1a4606b71ddbf57db0f75f040e0 Mon Sep 17 00:00:00 2001 From: Jeroen van Baarsen Date: Thu, 7 May 2015 15:57:33 +0200 Subject: Let Sidekiq set provider_job_id When a job is added to Sidekiq by ActiveJob, make sure we still can get the original job_id provider by Sidekiq. We do this by adding the sidekiq jid to provider_job_id field on the job object. Partly fixes #18821 Signed-off-by: Jeroen van Baarsen --- activejob/test/integration/queuing_test.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'activejob/test/integration') diff --git a/activejob/test/integration/queuing_test.rb b/activejob/test/integration/queuing_test.rb index 403b803558..f2665221b8 100644 --- a/activejob/test/integration/queuing_test.rb +++ b/activejob/test/integration/queuing_test.rb @@ -61,4 +61,14 @@ class QueuingTest < ActiveSupport::TestCase test_job = TestJob.perform_later @id assert_kind_of Fixnum, test_job.provider_job_id end + + test 'should supply a provider_job_id to Sidekiq' do + skip unless adapter_is?(:sidekiq) + test_job = TestJob.perform_later @id + refute test_job.provider_job_id.nil?, "Provider job id should be set by Sidekiq" + + delayed_test_job = TestJob.set(wait: 1.minute).perform_later @id + refute delayed_test_job.provider_job_id.nil?, + "Provider job id should by set for delayed jobs by sidekiq" + end end -- cgit v1.2.3