Sha256: 394ffb83e5e2cc1282d1ff6a86e53e4d80dd30608e057d39910a78f8705131e9
Contents?: true
Size: 1.42 KB
Versions: 41
Compression:
Stored size: 1.42 KB
Contents
require 'spec_helper' RSpec.describe CanvasSync::MiscHelper do describe ".invoke_task" do with_model :Model do table model do def wait_callback(*args); end def self.wait_callback(*args); end end end class CPW_TestWorker extend Sidekiq::Worker end it 'schedules a given job' do expect(CPW_TestWorker).to receive(:perform_async) described_class.invoke_task( job: 'CPW_TestWorker', args: [1, 2], ) end it 'accepts a method string' do expect(Model).to receive(:wait_callback).with(1, 2, a: 3, b: 4) described_class.invoke_task( method: "#{Model.to_s}.wait_callback", args: [1, 2], kwargs: { a: 3, b: 4 }, ) end it 'invokes a model method' do model = Model.create! expect(Model).to receive(:find_by).with(id: model.id).and_return(model) expect(model).to receive(:wait_callback).with(1, 2, a: 3, b: 4) described_class.invoke_task( model: Model.to_s, find_by: { id: model.id }, method: :wait_callback, args: [1, 2], kwargs: { a: 3, b: 4 }, ) end it 'invokes a class method' do expect(Model).to receive(:wait_callback).with(1, 2, a: 3, b: 4) described_class.invoke_task( class: Model.to_s, method: :wait_callback, args: [1, 2], kwargs: { a: 3, b: 4 }, ) end end end
Version data entries
41 entries across 41 versions & 1 rubygems