Sha256: e31f9c27a6b3d211ef06902e401d46f549026e96b595626333cd10539f8401d2

Contents?: true

Size: 914 Bytes

Versions: 2

Compression:

Stored size: 914 Bytes

Contents

require 'spec_helper'

describe DispatchRider::Callbacks::Storage do
  subject { described_class.new }

  describe "adding callbacks" do
    let!(:log) { [] }
    let(:actual) { proc { log << :actual } }

    describe "#around" do
      example do
        subject.around(:initialize) do |job|
          log << :abefore
          job.call
          log << :aafter
        end
        subject.for(:initialize).first[actual]
        expect(log).to eq %i[abefore actual aafter]
      end
    end

    describe "#before" do
      example do
        subject.before(:initialize) { log << :before }
        subject.for(:initialize).first[actual]
        expect(log).to eq %i[before actual]
      end
    end

    describe "#after" do
      example do
        subject.after(:initialize) { log << :after }
        subject.for(:initialize).first[actual]
        expect(log).to eq %i[actual after]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
dispatch-rider-2.1.0 spec/lib/dispatch-rider/callbacks/storage_spec.rb
dispatch-rider-2.0.0 spec/lib/dispatch-rider/callbacks/storage_spec.rb