Sha256: ba85f5e68f21ac4b5b79e9915722f990ef3503c35979b4fde35e6e83c0c197fa
Contents?: true
Size: 1.17 KB
Versions: 11
Compression:
Stored size: 1.17 KB
Contents
require 'spec_helper' require 'shared_examples_for_active_job' require 'shoryuken/extensions/active_job_adapter' require 'shoryuken/extensions/active_job_concurrent_send_adapter' RSpec.describe ActiveJob::QueueAdapters::ShoryukenConcurrentSendAdapter do include_examples 'active_job_adapters' let(:options) { {} } let(:error_handler) { -> {} } let(:success_handler) { -> {} } before do allow(Concurrent).to receive(:global_io_executor).and_return(Concurrent::ImmediateExecutor.new) end subject { described_class.new(success_handler, error_handler) } context 'when success' do it 'calls success_handler' do response = true allow(queue).to receive(:send_message).and_return(response) expect(success_handler).to receive(:call).with(response, job, options) subject.enqueue(job, options) end end context 'when failure' do it 'calls error_handler' do response = Aws::SQS::Errors::InternalError.new('error', 'error') allow(queue).to receive(:send_message).and_raise(response) expect(error_handler).to receive(:call).with(response, job, options).and_call_original subject.enqueue(job, options) end end end
Version data entries
11 entries across 11 versions & 1 rubygems