spec/rack/dev-mark/railtie_spec.rb in rack-dev-mark-0.6.3 vs spec/rack/dev-mark/railtie_spec.rb in rack-dev-mark-0.6.4
- old
+ new
@@ -13,11 +13,13 @@
before do
@app.config.rack_dev_mark.enable = true
end
it 'inserts the middleware' do
@app.initialize!
- expect(@app.middleware.middlewares).to include(Rack::DevMark::Middleware)
+ middlewares = @app.middleware.middlewares
+ expect(middlewares).to include(Rack::DevMark::Middleware)
+ expect(middlewares.index(Rack::DevMark::Middleware)).to eq(middlewares.index(ActionDispatch::ShowExceptions) - 1)
end
end
context "rack_dev_mark disable" do
before do
@app.config.rack_dev_mark.enable = false
@@ -54,9 +56,39 @@
@app.config.rack_dev_mark.custom_theme = [theme]
end
it 'inserts the middleware' do
@app.initialize!
expect(theme).to receive(:setup)
+ end
+ end
+ context "rack_dev_mark insert_before" do
+ let(:dummy_middleware) { Class.new{ define_method(:initialize) { |_| }; define_method(:to_s) { 'Dummy' } } }
+ before do
+ @app.config.middleware.use dummy_middleware
+ @app.config.rack_dev_mark.enable = true
+ @app.config.rack_dev_mark.insert_before dummy_middleware
+ end
+ it 'inserts the middleware before the other middleware' do
+ @app.initialize!
+ middlewares = @app.middleware.middlewares
+ expect(middlewares).to include(Rack::DevMark::Middleware)
+ expect(middlewares).to include(dummy_middleware)
+ expect(middlewares.index(Rack::DevMark::Middleware)).to eq(middlewares.index(dummy_middleware) - 1)
+ end
+ end
+ context "rack_dev_mark insert_after" do
+ let(:dummy_middleware) { Class.new{ define_method(:initialize) { |_| }; define_method(:to_s) { 'Dummy' } } }
+ before do
+ @app.config.middleware.use dummy_middleware
+ @app.config.rack_dev_mark.enable = true
+ @app.config.rack_dev_mark.insert_after dummy_middleware
+ end
+ it 'inserts the middleware before the other middleware' do
+ @app.initialize!
+ middlewares = @app.middleware.middlewares
+ expect(middlewares).to include(Rack::DevMark::Middleware)
+ expect(middlewares).to include(dummy_middleware)
+ expect(middlewares.index(Rack::DevMark::Middleware)).to eq(middlewares.index(dummy_middleware) + 1)
end
end
end
end