class UglyFace::Formatter::ReportFeature

Attributes

background[RW]
description[RW]
duration[R]
file[R]
parent_filename[R]
scenarios[RW]
start_time[R]
title[R]

Public Class Methods

new(feature, parent_filename) click to toggle source
# File lib/ugly_face/formatter/report.rb, line 88
def initialize(feature, parent_filename)
  @scenarios = []
  @background = []
  @start_time = Time.now
  @description = feature.description
  @parent_filename = parent_filename
end

Public Instance Methods

background_steps() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 114
def background_steps
  @background.find_all { |step| step.keyword }
end
background_title() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 110
def background_title
  title = @background.find { |step| step.keyword.nil? }
end
close(feature) click to toggle source
# File lib/ugly_face/formatter/report.rb, line 96
def close(feature)
  @title = feature.title
  @duration = Time.now - start_time
  a_file = feature.file.sub(/\.feature/, '.html')
  to_cut = a_file.split(separator).first
  @file = a_file.sub("#{to_cut}#{separator}", '')
end
description?() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 149
def description?
  !description.nil?  && !description.empty?
end
get_binding() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 145
def get_binding
  binding
end
has_background?() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 153
def has_background?
  background.length > 0
end
scenario_average_duration() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 132
def scenario_average_duration
  has_duration = scenarios.reject { |scenario| scenario.duration.nil? }
  durations = has_duration.collect { |scenario| scenario.duration }
  formatted_duration(durations.reduce(:+).to_f / durations.size)
end
scenario_summary_for(status) click to toggle source
# File lib/ugly_face/formatter/report.rb, line 122
def scenario_summary_for(status)
  scenarios_with_status = scenarios_for(status)
  summary_percent(scenarios_with_status.length, scenarios.length)
end
scenarios_for(status) click to toggle source
# File lib/ugly_face/formatter/report.rb, line 118
def scenarios_for(status)
  scenarios.find_all { |scenario| scenario.status == status }
end
step_average_duration() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 138
def step_average_duration
  steps = scenarios.collect { |scenario| scenario.steps }
  has_duration = steps.flatten.reject { |step| step.duration.nil? }
  durations = has_duration.collect { |step| step.duration }
  formatted_duration(durations.reduce(:+).to_f / durations.size)
end
step_summary_for(status) click to toggle source
# File lib/ugly_face/formatter/report.rb, line 127
def step_summary_for(status)
  steps_with_status = steps.find_all { |step| step.status == status }
  summary_percent(steps_with_status.length, steps.length)
end
steps() click to toggle source
# File lib/ugly_face/formatter/report.rb, line 104
def steps
  steps = []
  scenarios.each { |scenario| steps += scenario.steps }
  steps
end