Module: Gemkeeper::Output

Defined in:
lib/gemkeeper/output.rb

Overview

Centralizes ANSI gating so color codes never appear in test output or pipes.

Constant Summary collapse

COLORS =
{
  green: "\e[32m",
  yellow: "\e[33m",
  red: "\e[31m",
  dim: "\e[2m",
  reset: "\e[0m"
}.freeze

Class Method Summary collapse

Class Method Details

.colorize(text, color) ⇒ Object



16
17
18
19
20
# File 'lib/gemkeeper/output.rb', line 16

def colorize(text, color)
  return text unless $stdout.tty?

  "#{COLORS[color]}#{text}#{COLORS[:reset]}"
end

.failure(msg) ⇒ Object



25
# File 'lib/gemkeeper/output.rb', line 25

def failure(msg) = warn colorize(msg, :red)

.skip(msg) ⇒ Object



24
# File 'lib/gemkeeper/output.rb', line 24

def skip(msg)    = puts colorize(msg, :yellow)

.step(msg) ⇒ Object



22
# File 'lib/gemkeeper/output.rb', line 22

def step(msg)    = puts colorize("  #{msg}", :dim)

.success(msg) ⇒ Object



23
# File 'lib/gemkeeper/output.rb', line 23

def success(msg) = puts colorize(msg, :green)