Module: Omnitest::Core::Logger

Included in:
Omnitest
Defined in:
lib/omnitest/core/logger.rb

Instance Method Summary collapse

Instance Method Details

#log_level=(level) ⇒ Object



37
38
39
# File 'lib/omnitest/core/logger.rb', line 37

def log_level=(level)
  logger.level = level
end

#loggerObject



6
7
8
# File 'lib/omnitest/core/logger.rb', line 6

def logger
  @logger ||= new_logger
end

#new_logger(io = $stdout, level = :debug) ⇒ Object



10
11
12
13
14
# File 'lib/omnitest/core/logger.rb', line 10

def new_logger(io = $stdout, level = :debug)
  stdout_logger(io).tap do | logger |
    logger.level = Util.to_logger_level(level)
  end
end

#stdout_logger(stdout, color = nil) ⇒ StdoutLogger

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Construct a new standard out logger.

Parameters:

  • stdout (IO)

    the IO object that represents stdout (or similar)

  • color (Symbol) (defaults to: nil)

    color to use when outputing messages

Returns:



22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/omnitest/core/logger.rb', line 22

def stdout_logger(stdout, color = nil)
  logger = Omnitest::Core::StdoutLogger.new(stdout)
  # if Omnitest.tty?
  if stdout.tty? && color
    logger.formatter = proc do |_severity, _datetime, _progname, msg|
      Core::Color.colorize("#{msg}", color).concat("\n")
    end
  else
    logger.formatter = proc do |_severity, _datetime, _progname, msg|
      msg.concat("\n")
    end
  end
  logger
end