32 lines
1.1 KiB
Ruby
32 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.describe Faraday::MiddlewareRegistry do
|
|
before do
|
|
stub_const('CustomMiddleware', custom_middleware_klass)
|
|
end
|
|
let(:custom_middleware_klass) { Class.new(Faraday::Middleware) }
|
|
let(:dummy) { Class.new { extend Faraday::MiddlewareRegistry } }
|
|
|
|
after { dummy.unregister_middleware(:custom) }
|
|
|
|
it 'allows to register with constant' do
|
|
dummy.register_middleware(custom: custom_middleware_klass)
|
|
expect(dummy.lookup_middleware(:custom)).to eq(custom_middleware_klass)
|
|
end
|
|
|
|
it 'allows to register with symbol' do
|
|
dummy.register_middleware(custom: :CustomMiddleware)
|
|
expect(dummy.lookup_middleware(:custom)).to eq(custom_middleware_klass)
|
|
end
|
|
|
|
it 'allows to register with string' do
|
|
dummy.register_middleware(custom: 'CustomMiddleware')
|
|
expect(dummy.lookup_middleware(:custom)).to eq(custom_middleware_klass)
|
|
end
|
|
|
|
it 'allows to register with Proc' do
|
|
dummy.register_middleware(custom: -> { custom_middleware_klass })
|
|
expect(dummy.lookup_middleware(:custom)).to eq(custom_middleware_klass)
|
|
end
|
|
end
|