class SimpleCov::Formatter::CloverFormatter
Public Instance Methods
format(result)
click to toggle source
# File lib/simplecov-clover/formatter.rb, line 6 def format(result) # Generate coverage.xml clover_report(result) # Generate target/ HTML report SimpleCov::Formatter::RcovFormatter.new.format(result) end
Private Instance Methods
clover_report(result)
click to toggle source
# File lib/simplecov-clover/formatter.rb, line 14 def clover_report(result) now = Time.now.to_i builder = Nokogiri::XML::Builder.new do coverage(generated: now) { project(timestamp: now) { result.files.each do |file| file(name: file.filename) { file.lines.each do |line| line(num: line.line_number, count: line.coverage || 0) end metrics(loc: file.lines.count, ncloc: file.lines_of_code, statements: file.lines_of_code, coveredstatements: file.covered_lines.count) } end metrics(elements: result.total_lines, coveredelements: result.covered_lines, ncloc: result.total_lines) } } end File.open(File.join(SimpleCov.coverage_path, "coverage.xml"), "w+") do |file| file.puts builder.to_xml end puts "Clover coverage written at #{File.join(SimpleCov.coverage_path, "clover.xml")}" end