Sha256: 2b7009050ebf2402c1cff86c89726e85a7c1f6bbdda1aa9821ab2c391a02c7ce
Contents?: true
Size: 1.53 KB
Versions: 105
Compression:
Stored size: 1.53 KB
Contents
require 'spec_helper' RSpec.describe CanvasSync::JobBatches::ContextHash do class ContextedJob < BatchTestJobBase def perform was_performed(batch_context.flatten) end def was_performed(*args); end def self.callback_perform(*args) perform_later end end it "works with first-level jobs" do ActiveJob::Base.queue_adapter = :sidekiq b = CanvasSync::JobBatches::Batch.new b.context = { hello: 'world' } expect_any_instance_of(ContextedJob).to receive(:was_performed).with({ 'hello' => 'world' }) b.jobs do ContextedJob.perform_later end Sidekiq::Worker.drain_all end it "works with nested-batch jobs" do ActiveJob::Base.queue_adapter = :sidekiq b = CanvasSync::JobBatches::Batch.new b.context = { hello: 'world', foo: 'bar' } expect_any_instance_of(ContextedJob).to receive(:was_performed).with({ 'hello' => 'world', 'foo' => 'baz', 'some' => 'other' }) b.jobs do b2 = CanvasSync::JobBatches::Batch.new b2.context = { some: 'other', foo: 'baz' } b2.jobs do ContextedJob.perform_later end end Sidekiq::Worker.drain_all end it 'works with a callback batch' do ActiveJob::Base.queue_adapter = :sidekiq b = CanvasSync::JobBatches::Batch.new b.context = { hello: 'world' } b.on(:success, "ContextedJob.callback_perform") expect_any_instance_of(ContextedJob).to receive(:was_performed).with({ 'hello' => 'world' }) b.jobs do BatchTestJobBase.perform_later end Sidekiq::Worker.drain_all end end
Version data entries
105 entries across 105 versions & 1 rubygems