class Uncool::App

Attributes

namespaces[R]
options[R]
targets[R]

Public Class Methods

new(options={}) click to toggle source
# File lib/uncool/app.rb, line 10
def initialize(options={})
  @options    = options
  @namespaces = options[:namespaces]
end

Public Instance Methods

analysis() click to toggle source
# File lib/uncool/app.rb, line 35
def analysis
  @analysis ||= Analysis.new(trace, options)
end
generate(scripts) click to toggle source
# File lib/uncool/app.rb, line 57
def generate(scripts)
  require 'uncool/generator/ko'
  require 'uncool/generator/qed'
  require 'uncool/generator/lemon'

  generator = (
    case options[:framework]
    when :ko
      GeneratorKO.new(options)
    when :qed
      GeneratorQED.new(options)
    when :rspec
      #GeneratorRSpec.new(options)
    when :cuke, :cucumber
      #GeneratorCucumber.new(options)
    else
      GeneratorLemon.new(options)
    end
  )

  scripts.each{ |script| require(script) }

  generator.generate
end
log(logdir=nil) click to toggle source

This is the main method for activating hte trace and recording the results.

# File lib/uncool/app.rb, line 46
def log(logdir=nil)
  logdir = logdir || options[:output]
  trace.setup
  at_exit {
    trace.deactivate
    logdir ? report.save(logdir) : report.display
  }
  trace.activate
end
report() click to toggle source
# File lib/uncool/app.rb, line 40
def report
  @report ||= Report.new(analysis, options)
end
trace() click to toggle source
# File lib/uncool/app.rb, line 30
def trace
  @trace ||= Trace.new(targets, options)
end