Implement verbose status in Env

This commit is contained in:
Thibault Jouan 2015-04-09 10:46:02 +00:00
parent 6de680c443
commit 0d0eac111c
2 changed files with 28 additions and 1 deletions

View File

@ -5,12 +5,17 @@ module Uh
def_delegator :@logger, :info, :log
def_delegator :@output, :print
attr_reader :output, :logger
attr_reader :output, :logger
attr_accessor :verbose
def initialize output, logger: Logger.new(output)
@output = output
@logger = logger
end
def verbose?
!!@verbose
end
end
end
end

View File

@ -5,6 +5,28 @@ module Uh
let(:logger) { Logger.new(StringIO.new) }
subject(:env) { described_class.new output, logger: logger }
it 'has verbose mode disabled' do
expect(env).not_to be_verbose
end
describe '#verbose?' do
context 'when verbose mode is disabled' do
before { env.verbose = false }
it 'returns false' do
expect(env.verbose?).to be false
end
end
context 'when verbose mode is enabled' do
before { env.verbose = true }
it 'returns true' do
expect(env.verbose?).to be true
end
end
end
describe '#logger' do
it 'returns a logger' do
expect(env.logger).to be_a ::Logger