Sha256: cd4985afe8bb44e90189f9730f647f8310b6ef88686f5404ff04041ae5537f8e

Contents?: true

Size: 910 Bytes

Versions: 5

Compression:

Stored size: 910 Bytes

Contents

# frozen_string_literal: true

require "logger"
require "rainbow"

module GitHubChangelogGenerator
  module Helper
    # @return true if the currently running program is a unit test
    def self.test?
      defined? SpecHelper
    end

    # :nocov:
    @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"
      case severity
      when "DEBUG" then Rainbow(string).magenta
      when "INFO" then Rainbow(string).white
      when "WARN" then Rainbow(string).yellow
      when "ERROR" then Rainbow(string).red
      when "FATAL" then Rainbow(string).red.bright
      else string
      end
    end
    # :nocov:

    # Logging happens using this method
    class << self
      attr_reader :log
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
github_changelog_generator-1.15.2 lib/github_changelog_generator/helper.rb
github_changelog_generator-1.15.0 lib/github_changelog_generator/helper.rb
github_changelog_generator-1.15.0.pre.rc lib/github_changelog_generator/helper.rb
github_changelog_generator-1.15.0.pre.beta lib/github_changelog_generator/helper.rb
github_changelog_generator-1.15.0.pre.alpha lib/github_changelog_generator/helper.rb