Merge remote-tracking branch 'houstonmc/master' into houstonmc

This commit is contained in:
Vicent Llongo 2013-07-20 09:35:04 +03:00
commit 9f351db06c
4 changed files with 24 additions and 18 deletions

View File

@ -2,31 +2,36 @@ require 'simplecov'
require 'json'
class SimpleCov::Formatter::JSONFormatter
def format(result)
puts result.inspect
data = {}
data[:timestamp] = result.created_at.to_i
data[:command_name] = result.command_name
data[:files] = []
result.original_result.each do |filename,coverage|
result.original_result.each do |filename, coverage|
next unless result.filenames.include? filename
data[:files] << {
filename: filename,
coverage: coverage,
coverage: coverage
}
end
data[:groups] = result.groups
data[:metrics] = {
covered_percent: result.covered_percent,
covered_strength: result.covered_strength,
covered_lines: result.covered_lines,
total_lines: result.total_lines,
total_lines: result.total_lines
}
File.open(File.join(output_path, output_filename), "w+") do |file|
file.puts data.to_json
json = data.to_json
File.open(output_filepath, "w+") do |file|
file.puts json
end
puts output_message(result)
data.to_json
json
end
def output_filename
@ -41,9 +46,10 @@ class SimpleCov::Formatter::JSONFormatter
"Coverage report generated for #{result.command_name} to #{output_filepath}. #{result.covered_lines} / #{result.total_lines} LOC (#{result.covered_percent.round(2)}%) covered."
end
private
private
def output_path
SimpleCov.coverage_path
end
end

View File

@ -16,6 +16,8 @@ Gem::Specification.new do |s|
s.test_files = ['test/helper.rb', 'test/test_simplecov_json.rb']
s.require_paths = ["lib"]
s.add_dependency(%q<simplecov>, [">= 0"])
s.add_dependency(%q<json>, [">= 0"])
s.add_dependency "simplecov"
s.add_dependency "json"
s.add_development_dependency "rake"
end

View File

@ -4,7 +4,7 @@ require 'simplecov'
require 'simplecov-json'
require 'test/unit'
require 'mocha'
require 'mocha/setup'
class Test::Unit::TestCase
end

View File

@ -16,7 +16,6 @@ class TestSimpleCovHtml < Test::Unit::TestCase
result.expects(:filenames).returns(['/lib/foo.rb', '/lib/bar.rb'])
result.expects(:filenames).returns(['/lib/foo.rb', '/lib/bar.rb'])
result.expects(:filenames).returns(['/lib/foo.rb', '/lib/bar.rb'])
result.expects(:groups).returns(['controllers', 'models'])
result.expects(:covered_percent).returns(73.33)
result.expects(:covered_strength).returns(0.87)
result.expects(:covered_lines).returns(11)
@ -34,7 +33,6 @@ class TestSimpleCovHtml < Test::Unit::TestCase
{'filename' => '/lib/foo.rb', 'coverage' => [1, nil, 0, 0, nil, 1, nil]},
{'filename' => '/lib/bar.rb', 'coverage' => [nil, 1, nil, 1, 1, 1, 0, 0, nil, 1, nil]},
],
'groups' =>['controllers', 'models'],
'metrics' => {
'covered_percent' => 73.33,
'covered_strength' => 0.87,