class Uncool::Report

Public Class Methods

new(analysis, options={}) click to toggle source
# File lib/uncool/report.rb, line 7
def initialize(analysis, options={})
  @analysis = analysis
  @options  = options
end

Public Instance Methods

coverage() click to toggle source
# File lib/uncool/report.rb, line 18
def coverage
  @analysis.coverage
end
display(format=nil) click to toggle source
# File lib/uncool/report.rb, line 40
def display(format=nil)
  case options[:format]
  when 'tap'
    display_tap
  else
    display_color
  end
end
display_color() click to toggle source
# File lib/uncool/report.rb, line 50
def display_color
  require 'ansi'
  puts "\nUnit Coverage"
  i = 0
  coverage.uniq.sort.each do |unit|
    i += 1
    if unit.covered?
      puts "+ " + unit.to_s.ansi(:green)
    else
      puts "- " + unit.to_s.ansi(:red)
    end
  end
  puts
end
display_tap() click to toggle source
# File lib/uncool/report.rb, line 66
def display_tap
  i = 0
  coverage.uniq.sort.each do |unit|
    i += 1
    if unit.covered?
      puts "ok #{i} - " + unit.to_s
    else
      puts "not ok #{i} - " + unit.to_s
    end
  end
end
options() click to toggle source
# File lib/uncool/report.rb, line 13
def options
  @options
end
render() click to toggle source
# File lib/uncool/report.rb, line 23
def render
  require 'erb'
  rhtml = File.read(File.dirname(__FILE__) + '/report.rhtml')
  ERB.new(rhtml).result(binding)
end
save(logpath) click to toggle source
# File lib/uncool/report.rb, line 30
def save(logpath)
  require 'fileutils'
  dir  = File.join(logpath, 'uncool')
  file = File.join(dir, 'index.html')
  FileUtils.mkdir_p(dir)
  File.open(file, 'w'){ |w| w << render }
  $stderr.puts "Saved Uncool report at #{dir}."
end