Sha256: 98651e9f41b704f0cbb5733cb375bd87a7a3e07079cfa55e5cfb45ec9dcb6ed5

Contents?: true

Size: 805 Bytes

Versions: 5

Compression:

Stored size: 805 Bytes

Contents

# frozen_string_literal: true

require 'spec_helper'

class TestMiddleware < Acfs::Middleware::Base
end

describe Acfs::Service::Middleware do
  let(:srv_class) { Class.new(Acfs::Service) }
  let(: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.middleware).to include(middleware)
    end

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

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

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

      srv_class.use middleware, options
      srv_class.middleware.build
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
acfs-1.6.0 spec/acfs/service/middleware_spec.rb
acfs-1.5.1 spec/acfs/service/middleware_spec.rb
acfs-1.5.0 spec/acfs/service/middleware_spec.rb
acfs-1.4.0 spec/acfs/service/middleware_spec.rb
acfs-1.3.4 spec/acfs/service/middleware_spec.rb