Sha256: f1eaa8c06c753d97aceefd78ba2c4817340d5f702dc3f0317101d9426841e5f9

Contents?: true

Size: 1.44 KB

Versions: 18

Compression:

Stored size: 1.44 KB

Contents

require 'spec_helper'

begin
  require 'rollbar/delay/sidekiq'
  require 'sidekiq/testing'
rescue LoadError
  module Rollbar
    module Delay
      class Sidekiq
      end
    end
  end
end

describe Rollbar::Delay::Sidekiq, :if => RUBY_VERSION != '1.8.7' do
  let(:payload) { anything }

  describe "#perform" do
    it "performs payload" do
      Rollbar.should_receive(:process_payload_safely).with(payload)
      subject.perform payload
    end
  end

  describe "#call" do
    shared_examples "a Rollbar processor" do

      it "processes payload" do
        Rollbar.should_receive(:process_payload_safely).with(payload)

        subject.call payload
        described_class.drain
      end
    end

    context "with default options" do
      it "enqueues to default queue" do
        options = Rollbar::Delay::Sidekiq::OPTIONS.merge('args' => payload)
        ::Sidekiq::Client.should_receive(:push).with options

        subject.call payload
      end

      it_behaves_like "a Rollbar processor"
    end

    context "with custom options" do
      let(:custom_config) { { 'queue' => 'custom_queue' } }
      subject { Rollbar::Delay::Sidekiq.new custom_config }

      it "enqueues to custom queue" do
        options = Rollbar::Delay::Sidekiq::OPTIONS.merge(custom_config.merge('args' => payload))
        ::Sidekiq::Client.should_receive(:push).with options

        subject.call payload
      end

      it_behaves_like "a Rollbar processor"
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
rollbar-2.1.2 spec/delay/sidekiq_spec.rb
rollbar-2.1.1 spec/delay/sidekiq_spec.rb
rollbar-2.1.0 spec/delay/sidekiq_spec.rb
rollbar-2.0.2 spec/delay/sidekiq_spec.rb
rollbar-2.0.1 spec/delay/sidekiq_spec.rb
rollbar-2.0.0 spec/delay/sidekiq_spec.rb
rollbar-1.5.3 spec/delay/sidekiq_spec.rb
rollbar-1.5.2 spec/delay/sidekiq_spec.rb
rollbar-1.5.1 spec/delay/sidekiq_spec.rb
rollbar-1.5.0 spec/delay/sidekiq_spec.rb
rollbar-1.4.5 spec/delay/sidekiq_spec.rb
rollbar-1.4.4 spec/delay/sidekiq_spec.rb
rollbar-1.4.3 spec/delay/sidekiq_spec.rb
rollbar-1.4.2 spec/delay/sidekiq_spec.rb
rollbar-1.4.1 spec/delay/sidekiq_spec.rb
rollbar-1.4.0 spec/delay/sidekiq_spec.rb
rollbar-1.3.2 spec/delay/sidekiq_spec.rb
rollbar-1.3.1 spec/delay/sidekiq_spec.rb