class BenchmarkRequires::MessageBuilder

Public Class Methods

new(file_name, time) click to toggle source
# File lib/benchmark_requires/message_builder.rb, line 5
def initialize file_name, time
  @file_name = file_name
  @time = time.round 5
end

Public Instance Methods

message(level) click to toggle source
# File lib/benchmark_requires/message_builder.rb, line 10
def message level 
  "#{preamble(level)} -> #{colorize_file_name} took #{colorize_time} seconds."
end

Private Instance Methods

colorize_file_name() click to toggle source
# File lib/benchmark_requires/message_builder.rb, line 20
def colorize_file_name
  "\e[1;37m#{@file_name}\e[0m"
end
colorize_time() click to toggle source
# File lib/benchmark_requires/message_builder.rb, line 24
def colorize_time
  color = if @time <= 0.01 # green
    "\e[0;32m"
  elsif @time <= 0.25 # yellow
    "\e[1;33m"
  elsif @time <= 0.75 # red
    "\e[1;31m"
  else # OMFG RED!!!!
    "\e[0;31m"
  end
 
  color + ("%f" % @time) + "\e[0m"
end
preamble(level) click to toggle source
# File lib/benchmark_requires/message_builder.rb, line 16
def preamble level
  (level - 1).times.map{|n| "  "}.join("") 
end