Sha256: 6a0257e6c06db2cf72c1af58c784a8e04c0949e8be87f7fab7ad0ea84c931d80
Contents?: true
Size: 931 Bytes
Versions: 3
Compression:
Stored size: 931 Bytes
Contents
module Teaspoon class Coverage include Teaspoon::Utility def initialize(data) @data = data end def reports Dir.mktmpdir do |path| input = File.join(path, 'coverage.json') File.open(input, 'w') { |file| file.write(@data.to_json) } results = [] for format in Teaspoon.configuration.coverage_reports result = generate_report(input, format) results << result if ["text", "text-summary"].include?(format.to_s) end "\n#{results.join("\n\n")}\n" end end private def generate_report(input, format) result = %x{#{executable} report #{format} #{input.shellescape}} raise "Could not generate coverage report for #{format}" unless $?.exitstatus == 0 result.gsub("Done", "").gsub("Using reporter [#{format}]", "").strip end def executable @executable ||= which("istanbul") end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
teaspoon-0.7.6 | lib/teaspoon/coverage.rb |
teaspoon-0.7.5 | lib/teaspoon/coverage.rb |
teaspoon-0.7.4 | lib/teaspoon/coverage.rb |