github-changelog-generator/lib/github_changelog_generator/helper.rb
2016-02-23 17:19:14 +02:00

38 lines
884 B
Ruby

require "logger"
module GitHubChangelogGenerator
module Helper
# @return true if the currently running program is a unit test
def self.test?
defined? SpecHelper
end
@log ||= if test?
Logger.new(nil) # don't show any logs when running tests
else
Logger.new(STDOUT)
end
@log.formatter = proc do |severity, _datetime, _progname, msg|
string = "#{msg}\n"
if severity == "DEBUG"
string = string.magenta
elsif severity == "INFO"
string = string.white
elsif severity == "WARN"
string = string.yellow
elsif severity == "ERROR"
string = string.red
elsif severity == "FATAL"
string = string.red.bold
end
string
end
# Logging happens using this method
class << self
attr_reader :log
end
end
end