class RSpec2

Constants

PI_3

Public Class Methods

new(options) click to toggle source
Calls superclass method
# File lib/rainbow_formatter/rspec2.rb, line 6
def initialize(options)
  # colors calculation stolen from Minitest's Pride Plugin
  # https://github.com/seattlerb/minitest
  @colors = (0...(6 * 7)).map do |n|
    n *= 1.0 / 6
    r  = (3 * Math.sin(n) + 3).to_i
    g  = (3 * Math.sin(n + 2 * PI_3) + 3).to_i
    b  = (3 * Math.sin(n + 4 * PI_3) + 3).to_i

    36 * r + 6 * g + b + 16
  end
  @color_index = 0
  super(options)
end

Public Instance Methods

color(text, color_code) click to toggle source
Calls superclass method
# File lib/rainbow_formatter/rspec2.rb, line 26
def color(text, color_code)
  color_code = rainbow if text == '.'
  super
end
color_code_for(code_or_symbol) click to toggle source
Calls superclass method
# File lib/rainbow_formatter/rspec2.rb, line 31
def color_code_for(code_or_symbol)
  return "38;5;#{code_or_symbol}" if code_or_symbol.is_a?(Integer)
  super
end
rainbow() click to toggle source
# File lib/rainbow_formatter/rspec2.rb, line 21
def rainbow
  @color_index == (@colors.size - 1) ? @color_index = 0 : @color_index += 1
  @colors[@color_index]
end