class MetricFu::FlayHotspot
Constants
- COLUMNS
Public Instance Methods
columns()
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 4 def columns COLUMNS end
generate_records(data, table)
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 24 def generate_records(data, table) return if data == nil Array(data[:matches]).each do |match| problems = match[:reason] matching_reason = problems.gsub(/^[0-9]+\) /, "").gsub(/\:[0-9]+/, "") files = [] locations = [] match[:matches].each do |file_match| file_path = file_match[:name].sub(%r{^/}, "") locations << "#{file_path}:#{file_match[:line]}" files << file_path end files = files.uniq files.each do |file| table << { "metric" => name, "file_path" => file, "flay_reason" => problems + " files: #{locations.join(', ')}", "flay_matching_reason" => matching_reason } end end end
map_strategy()
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 12 def map_strategy :present end
name()
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 8 def name :flay end
present_group(group)
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 48 def present_group(group) occurences = group.size "found #{occurences} code duplications" end
reduce_strategy()
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 16 def reduce_strategy :sum end
score_strategy()
click to toggle source
# File lib/metric_fu/metrics/flay/hotspot.rb, line 20 def score_strategy :percentile end