Sha256: 649d286b5fc671a0d2272f005b1c0e6ba22dfabb6b9896e1665ce89400c174a8

Contents?: true

Size: 1.13 KB

Versions: 63

Compression:

Stored size: 1.13 KB

Contents

require 'spec_helper'

class TestMiddleware < Acfs::Middleware::Base
end

describe Acfs::Service::Middleware do
  let(:srv_class) { Class.new(Acfs::Service) }
  let(:options) { {} }
  let(:service) { srv_class.new options }
  let(:middleware) { TestMiddleware }

  describe '.use' do
    let(:options) { { abc: 'cde' } }

    it 'should add middleware to list' do
      srv_class.use middleware

      expect(srv_class.instance_variable_get(:@middlewares)).to include(middleware)
    end

    it 'should add middleware to stack' do
      srv_class.use middleware

      expect(srv_class.middleware).to be_a(middleware)
    end

    it 'should instantiate middleware object' do
      expect(middleware).to receive(:new).with(anything, options)

      srv_class.use middleware, options
    end
  end

  describe '.clear' do
    before { srv_class.use middleware }

    it 'should clear middleware list' do
      srv_class.clear

      expect(srv_class.instance_variable_get(:@middlewares)).to be_empty
    end

    it 'should reset middleware stack' do
      srv_class.clear

      expect(srv_class.instance_variable_get(:@middleware)).to be_nil
    end
  end
end

Version data entries

63 entries across 63 versions & 1 rubygems

Version Path
acfs-0.42.0 spec/acfs/service/middleware_spec.rb
acfs-0.41.1 spec/acfs/service/middleware_spec.rb
acfs-0.41.1.beta1 spec/acfs/service/middleware_spec.rb
acfs-0.41.0 spec/acfs/service/middleware_spec.rb
acfs-0.40.1.rc1 spec/acfs/service/middleware_spec.rb
acfs-0.40.0 spec/acfs/service/middleware_spec.rb
acfs-0.39.1 spec/acfs/service/middleware_spec.rb
acfs-0.39.0 spec/acfs/service/middleware_spec.rb
acfs-1.0.0.dev.1.b305 spec/acfs/service/middleware_spec.rb
acfs-0.38.0 spec/acfs/service/middleware_spec.rb
acfs-1.0.0.dev.1.b298 spec/acfs/service/middleware_spec.rb
acfs-1.0.0.dev.1.b297 spec/acfs/service/middleware_spec.rb
acfs-0.37.0.1.b295 spec/acfs/service/middleware_spec.rb
acfs-0.37.0 spec/acfs/service/middleware_spec.rb
acfs-0.36.0.1.b293 spec/acfs/service/middleware_spec.rb
acfs-0.36.0 spec/acfs/service/middleware_spec.rb
acfs-0.35.0.1.b291 spec/acfs/service/middleware_spec.rb
acfs-0.35.0 spec/acfs/service/middleware_spec.rb
acfs-0.34.1.1.b289 spec/acfs/service/middleware_spec.rb
acfs-0.34.1 spec/acfs/service/middleware_spec.rb