Sha256: 25a1cbc70ebf81930900a0acb0e0cf7e1259111cd4574bf63bcd0c01e48bb3fe

Contents?: true

Size: 911 Bytes

Versions: 5

Compression:

Stored size: 911 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.16.4 lib/github_changelog_generator/helper.rb
github_changelog_generator-1.16.3 lib/github_changelog_generator/helper.rb
github_changelog_generator-1.16.2 lib/github_changelog_generator/helper.rb
github_changelog_generator-1.16.1 lib/github_changelog_generator/helper.rb
github_changelog_generator-1.16.0 lib/github_changelog_generator/helper.rb