Sha256: fa296d507cd2ad495eeab69d3eb61bfa0737b3be5ecdc4a99152c6e8b740be55
Contents?: true
Size: 1.23 KB
Versions: 2
Compression:
Stored size: 1.23 KB
Contents
require 'spec_helper' describe PaulBunyan::MetadataLogging do subject { Object.new } let(:formatter) { double('formatter') } before do subject.extend(PaulBunyan::MetadataLogging) allow(subject).to receive(:formatter).and_return(formatter) end it 'must delegate clear_metadata! to the formatter' do expect(formatter).to receive(:clear_metadata!) subject.clear_metadata! end it 'must delegate with_metadata to the formatter' do expect(formatter).to receive(:with_metadata).with(foo: 'bar').and_yield subject.with_metadata(foo: 'bar') do |logger| expect(subject).to eq logger end end context '#flush' do it 'clears metadata on the formatter' do expect(formatter).to receive(:clear_metadata!) subject.flush end it 'sends flush to a parent' do klass = Class.new klass.class_eval do def flush flush_behavior() end end metadata_logger = klass.new metadata_logger.extend(PaulBunyan::MetadataLogging) allow(metadata_logger).to receive(:formatter).and_return(formatter) allow(formatter).to receive(:clear_metadata!) expect(metadata_logger).to receive(:flush_behavior) metadata_logger.flush end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
paul_bunyan-1.5.1 | spec/lib/paul_bunyan/metadata_logging_spec.rb |
paul_bunyan-1.5.0 | spec/lib/paul_bunyan/metadata_logging_spec.rb |