Sha256: b04dec69789376947850125ae6429488db7acc7b71cb130d1ab898e41e2aed0f
Contents?: true
Size: 1.6 KB
Versions: 1
Compression:
Stored size: 1.6 KB
Contents
require 'spec_helper' describe Silencer::Logger do before(:each) do @app = lambda { |env| [200, {}, ''] } Rails.logger = stub('ActiveSupport::BufferedLogger').tap do |l| l.stub(:level).and_return(::Logger::INFO) l.stub(:level=).and_return(true) l.stub(:info) end end it 'allows log writing when not implemented' do Rails.logger.should_not_receive(:level=).with(::Logger::ERROR) Silencer::Logger.new(@app).call(Rack::MockRequest.env_for("/")) end it 'instantiates with an optional taggers array' do Rails.logger.should_not_receive(:level=).with(::Logger::ERROR).once Silencer::Logger.new(@app, :uuid, :queue, :silence => ['/']).call(Rack::MockRequest.env_for("/")) end it 'quiets the log when configured with a silenced path' do Rails.logger.should_receive(:level=).with(::Logger::ERROR).once Silencer::Logger.new(@app, :silence => ['/']).call(Rack::MockRequest.env_for("/")) end it 'quiets the log when configured with a regex' do Rails.logger.should_receive(:level=).with(::Logger::ERROR).once Silencer::Logger.new(@app, :silence => [/assets/]).call(Rack::MockRequest.env_for("/assets/application.css")) end it 'quiets the log when passed a custom header "X-SILENCE-LOGGER"' do Rails.logger.should_receive(:level=).with(::Logger::ERROR).once Silencer::Logger.new(@app).call(Rack::MockRequest.env_for("/", 'X-SILENCE-LOGGER' => 'true')) end it 'does not tamper with the response' do response = Silencer::Logger.new(@app).call(Rack::MockRequest.env_for("/", 'X-SILENCE-LOGGER' => 'true')) response[0].should eq(200) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
silencer-0.4.0 | spec/silencer_spec.rb |