class Xcov::Base
Attributes
coverage[RW]
coverage_color[RW]
displayable_coverage[RW]
id[RW]
name[RW]
Public Class Methods
create_id(name)
click to toggle source
# File lib/xcov/model/base.rb, line 64 def self.create_id(name) char_map = [('a'..'z'), ('A'..'Z')].map { |i| i.to_a }.flatten random = (0...50).map { char_map[rand(char_map.length)] }.join pre_hash = "#{random}_#{name}" Digest::SHA1.hexdigest(pre_hash) end
template(name)
click to toggle source
Class methods
# File lib/xcov/model/base.rb, line 60 def self.template(name) ERB.new(File.read(File.join(File.dirname(__FILE__), "../../../views/", "#{name}.erb"))) end
Public Instance Methods
coverage_emoji()
click to toggle source
# File lib/xcov/model/base.rb, line 45 def coverage_emoji return "" if @ignored if @coverage >= 0.80 return ":white_check_mark:" elsif @coverage >= 0.50 return ":warning:" elsif @coverage >= 0.25 return ":no_entry_sign:" else return ":skull:" end end
create_coverage_color()
click to toggle source
# File lib/xcov/model/base.rb, line 19 def create_coverage_color return "#363636" if @ignored if @coverage > 0.8 return "#1FCB32" elsif @coverage > 0.65 return "#FCFF00" elsif @coverage > 0.5 return "#FF9C00" else return "#FF0000" end end
create_displayable_coverage()
click to toggle source
# File lib/xcov/model/base.rb, line 13 def create_displayable_coverage return "-" if @ignored "%.2f%%" % [(@coverage*100)] end
create_summary()
click to toggle source
# File lib/xcov/model/base.rb, line 33 def create_summary if @coverage > 0.8 return "Overall coverage is good" elsif @coverage > 0.65 return "There is room for improvement" elsif @coverage > 0.5 return "Almost unmaintainable" else return "Keep calm and leave the boat" end end