mirror of
https://github.com/ditkrg/simplecov-json.git
synced 2026-01-22 22:06:46 +00:00
Merge pull request #3 from vicentllongo/houstonmc
Merge houstonmc/master
This commit is contained in:
commit
d841a16abb
@ -2,31 +2,36 @@ require 'simplecov'
|
|||||||
require 'json'
|
require 'json'
|
||||||
|
|
||||||
class SimpleCov::Formatter::JSONFormatter
|
class SimpleCov::Formatter::JSONFormatter
|
||||||
|
|
||||||
def format(result)
|
def format(result)
|
||||||
puts result.inspect
|
|
||||||
data = {}
|
data = {}
|
||||||
data[:timestamp] = result.created_at.to_i
|
data[:timestamp] = result.created_at.to_i
|
||||||
data[:command_name] = result.command_name
|
data[:command_name] = result.command_name
|
||||||
data[:files] = []
|
data[:files] = []
|
||||||
result.original_result.each do |filename,coverage|
|
result.original_result.each do |filename, coverage|
|
||||||
next unless result.filenames.include? filename
|
next unless result.filenames.include? filename
|
||||||
|
|
||||||
data[:files] << {
|
data[:files] << {
|
||||||
filename: filename,
|
filename: filename,
|
||||||
coverage: coverage,
|
coverage: coverage
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
data[:groups] = result.groups
|
|
||||||
data[:metrics] = {
|
data[:metrics] = {
|
||||||
covered_percent: result.covered_percent,
|
covered_percent: result.covered_percent,
|
||||||
covered_strength: result.covered_strength,
|
covered_strength: result.covered_strength,
|
||||||
covered_lines: result.covered_lines,
|
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
|
end
|
||||||
|
|
||||||
puts output_message(result)
|
puts output_message(result)
|
||||||
data.to_json
|
|
||||||
|
json
|
||||||
end
|
end
|
||||||
|
|
||||||
def output_filename
|
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."
|
"Coverage report generated for #{result.command_name} to #{output_filepath}. #{result.covered_lines} / #{result.total_lines} LOC (#{result.covered_percent.round(2)}%) covered."
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def output_path
|
def output_path
|
||||||
SimpleCov.coverage_path
|
SimpleCov.coverage_path
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@ -16,6 +16,8 @@ Gem::Specification.new do |s|
|
|||||||
s.test_files = ['test/helper.rb', 'test/test_simplecov_json.rb']
|
s.test_files = ['test/helper.rb', 'test/test_simplecov_json.rb']
|
||||||
s.require_paths = ["lib"]
|
s.require_paths = ["lib"]
|
||||||
|
|
||||||
s.add_dependency(%q<simplecov>, [">= 0"])
|
s.add_dependency "simplecov"
|
||||||
s.add_dependency(%q<json>, [">= 0"])
|
s.add_dependency "json"
|
||||||
|
|
||||||
|
s.add_development_dependency "rake"
|
||||||
end
|
end
|
||||||
|
|||||||
@ -4,7 +4,7 @@ require 'simplecov'
|
|||||||
require 'simplecov-json'
|
require 'simplecov-json'
|
||||||
|
|
||||||
require 'test/unit'
|
require 'test/unit'
|
||||||
require 'mocha'
|
require 'mocha/setup'
|
||||||
|
|
||||||
class Test::Unit::TestCase
|
class Test::Unit::TestCase
|
||||||
end
|
end
|
||||||
|
|||||||
@ -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(: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_percent).returns(73.33)
|
||||||
result.expects(:covered_strength).returns(0.87)
|
result.expects(:covered_strength).returns(0.87)
|
||||||
result.expects(:covered_lines).returns(11)
|
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/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]},
|
{'filename' => '/lib/bar.rb', 'coverage' => [nil, 1, nil, 1, 1, 1, 0, 0, nil, 1, nil]},
|
||||||
],
|
],
|
||||||
'groups' =>['controllers', 'models'],
|
|
||||||
'metrics' => {
|
'metrics' => {
|
||||||
'covered_percent' => 73.33,
|
'covered_percent' => 73.33,
|
||||||
'covered_strength' => 0.87,
|
'covered_strength' => 0.87,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user