Sha256: 36308d7f7aa31ce7ce68efed57cf0328476cb94336b253f4e6be1769eb027c8f
Contents?: true
Size: 1.17 KB
Versions: 1
Compression:
Stored size: 1.17 KB
Contents
require "minitest/colorize/version" require "minitest/unit" module MiniTest class Colorize attr_accessor :io def initialize(io) self.io = io end def print(string = nil) return io.print if string.nil? if color = colors[string] io.print tint(color, string) else io.print string end end def puts(string = nil) return io.puts if string.nil? if string =~ /(\d+) tests, (\d+) assertions, (\d+) failures, (\d+) errors, (\d+) skips/ color = if $3 != '0' colors['F'] elsif $4 != '0' colors['E'] elsif $5 != '0' colors['S'] else colors['.'] end io.puts tint(color, string) else io.puts string end end def method_missing(method, *args, &block) io.send(method, *args, &block) end protected def tint(color, string) "\e[#{color}m#{string}\e[0m" end def colors { "F" => 31, "E" => 31, "S" => 33, "." => 32 } end end end MiniTest::Unit.output = MiniTest::Colorize.new(MiniTest::Unit.output)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
minitest-colorize-0.0.2 | lib/minitest/colorize.rb |