Sha256: a4dd62691a9296a3dd4de2bbeae908df76a4b4f6ba2526a064081a5808f5d58f
Contents?: true
Size: 1.45 KB
Versions: 54
Compression:
Stored size: 1.45 KB
Contents
require 'spec_helper' require_relative '../../../lib/locomotive/steam/middlewares/stack_proxy' describe Locomotive::Steam::Middlewares::StackProxy do let(:klass) { Locomotive::Steam::Middlewares::StackProxy } let(:proxy) { klass.new } describe '#initialize' do let(:args) { DefaultMiddleware } subject do klass.new { use(DefaultMiddleware) } end it 'adds it to the list' do expect(subject.list.size).to eq 1 expect(subject.list.first).to eq [[DefaultMiddleware], nil] end end describe '#use' do let(:args) { DefaultMiddleware } before { proxy.use(*args) } it 'adds it to the operations' do expect(proxy.list.size).to eq 1 expect(proxy.list.first).to eq [[DefaultMiddleware], nil] end end describe 'manipulating middlewares' do before do proxy.use DefaultMiddleware proxy.use SimpleMiddleware proxy.insert_before SimpleMiddleware, FooMiddleware proxy.use BarMiddleware, { answer: 42 } proxy.delete SimpleMiddleware proxy.insert_after 1, FancyMiddleware end subject { proxy.list } it do is_expected.to eq([ [[DefaultMiddleware], nil], [[FooMiddleware], nil], [[FancyMiddleware], nil], [[BarMiddleware, { answer: 42 }], nil] ]) end end class SimpleMiddleware; end class DefaultMiddleware; end class FooMiddleware; end class BarMiddleware; end class FancyMiddleware; end end
Version data entries
54 entries across 54 versions & 1 rubygems