Refactor and simplify CLI and Env:

* Do not modify Env logger from CLI;
* Add verbose attribute to Env;
* Implement Env#verbose?;
* Remove Env#log_level and Env#log_level=;
* Refactor related specs, improve some wording.
This commit is contained in:
Thibault Jouan
2014-05-25 17:44:24 +00:00
parent 0db2d90b72
commit 39427c35c3
4 changed files with 51 additions and 50 deletions

View File

@@ -36,7 +36,7 @@ module Producer
@arguments = arguments.inject([]) do |m, e|
case e
when '-v'
env.log_level = Logger::INFO
env.verbose = true
when '-n'
env.dry_run = true
else

View File

@@ -2,14 +2,14 @@ module Producer
module Core
class Env
attr_reader :input, :output, :registry, :logger
attr_accessor :target, :dry_run
attr_accessor :target, :verbose, :dry_run
def initialize(input: $stdin, output: $stdout, remote: nil, registry: {})
@verbose = @dry_run = false
@input = input
@output = output
@registry = registry
@remote = remote
@dry_run = false
@registry = registry
end
def remote
@@ -27,7 +27,7 @@ module Producer
def logger
@logger ||= begin
logger = Logger.new(output)
logger.level = Logger::ERROR
logger.level = verbose? ? Logger::INFO : Logger::ERROR
logger.formatter = LoggerFormatter.new
logger
end
@@ -37,12 +37,8 @@ module Producer
logger.info message
end
def log_level
logger.level
end
def log_level=(level)
logger.level = level
def verbose?
@verbose
end
def dry_run?