simplecov-oj 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 2a5cb1f33b1f2da7cf91879ec6ab44c70ea9d3069a1d67bc7953426da1c06489
4
+ data.tar.gz: 64abb42d0f448f50854ab31fc41b004122c41c4e3ea5b1379aaf1ceb1e503fc8
5
+ SHA512:
6
+ metadata.gz: 266222bbef8d53d90d3eb6f9d8b1fa352b7ecd542180e37f509e87c783197a1ea130d3135a92947c2c991d579240346b0869814ebe7442c9efbdd81c7bf3ef72
7
+ data.tar.gz: 4afe0864271389a015292f944035bc354e1be3d64ed4a105c4f221a8119c1f0362d95c5c464af5b73b1b7155beac92e008f5f9f3a52549a1f5b013d48f8088eb
data/CHANGELOG.md ADDED
@@ -0,0 +1,9 @@
1
+ # Changelog
2
+
3
+ ## [v0.2](https://github.com/mhenrixon/simplecov-oj/tree/v0.2) (2013-07-20)
4
+
5
+ [Full Changelog](https://github.com/mhenrixon/simplecov-oj/compare/aa3f4993ad39ba63229938d23ac2470b6f2cee3e...v0.2)
6
+
7
+
8
+
9
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2010-2020 Mikael Henriksson http://mhenrixon.com
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,64 @@
1
+ # simplecov-json
2
+
3
+ JSON formatter for the ruby 1.9+ code coverage gem SimpleCov
4
+
5
+ ## Usage
6
+
7
+ 1. Add simplecov-json to your `Gemfile` and `bundle install`:
8
+
9
+ gem 'simplecov-json', :require => false, :group => :test
10
+
11
+ 2. Require simplecov-json and set it up as SimpleCov's formatter:
12
+
13
+ require 'simplecov-json'
14
+ SimpleCov.formatter = SimpleCov::Formatter::JSONFormatter
15
+
16
+ ## Result
17
+
18
+ Generated JSON can be found in coverage/coverage.json
19
+
20
+ The format you can expect is:
21
+ ```json
22
+ {
23
+ "timestamp": 1348489587,
24
+ "command_name": "RSpec",
25
+ "files": [
26
+ {
27
+ "filename": "/home/user/rails/environment.rb",
28
+ "covered_percent": 50.0,
29
+ "coverage": [
30
+ null,
31
+ 1,
32
+ null,
33
+ null,
34
+ 1
35
+ ],
36
+ "covered_strength": 0.50,
37
+ "covered_lines": 2,
38
+ "lines_of_code": 4
39
+ },
40
+ ...
41
+ ],
42
+ "metrics": {
43
+ "covered_percent": 81.70731707317073,
44
+ "covered_strength": 0.8170731707317073,
45
+ "covered_lines": 67,
46
+ "total_lines": 82
47
+ }
48
+ }
49
+ ```
50
+
51
+ ## Making Contributions
52
+
53
+ If you want to contribute, please:
54
+
55
+ * Fork the project.
56
+ * Make your feature addition or bug fix.
57
+ * Add tests for it. This is important so I don't break it in a future version unintentionally.
58
+ * Send me a pull request on Github.
59
+ * Check that travis build passes for your pull request.
60
+
61
+
62
+ ## Copyright
63
+
64
+ Copyright (c) 2013 Mikael Llongo. See LICENSE for details.
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see SimpleCov https://github.com/colszowka/simplecov
4
+ module SimpleCov
5
+ # @see SimpleCov::Formatter https://github.com/colszowka/simplecov
6
+ module Formatter
7
+ #
8
+ # Formats Simplecov Results into a json file `coverage.json`
9
+ #
10
+ # @author Mikael Henriksson <mikael@mhenrixon.se>
11
+ #
12
+ class OjFormatter
13
+ #
14
+ # @return [String] name of the file with coverage.json data
15
+ FILE_NAME = "coverage.json"
16
+
17
+ #
18
+ # Formats the result as a hash, dump it to json with Oj and then save it to disk
19
+ #
20
+ # @param [SimpleCov::Result] result
21
+ #
22
+ # @return [<type>] <description>
23
+ #
24
+ def format(result)
25
+ json = dump_json(result)
26
+ puts SimpleCov::Oj::OutputMessage.new(result, output_filepath)
27
+
28
+ json
29
+ end
30
+
31
+ private
32
+
33
+ # @private
34
+ def dump_json(result)
35
+ data = SimpleCov::Oj::ResultToHash.new(result).to_h
36
+ json = ::Oj.dump(data, mode: :compat)
37
+
38
+ File.open(output_filepath, "w+") do |file|
39
+ file.puts json
40
+ end
41
+
42
+ json
43
+ end
44
+
45
+ # @private
46
+ def output_filename
47
+ FILE_NAME
48
+ end
49
+
50
+ # @private
51
+ def output_filepath
52
+ File.join(SimpleCov.coverage_path, output_filename)
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SimpleCov
4
+ module Oj
5
+ #
6
+ # Generates a nicely formatted string about generated coverage
7
+ #
8
+ # @author Mikael Henriksson <mikael@mhenrixon.se>
9
+ #
10
+ class OutputMessage
11
+ #
12
+ # Initialize a new OutputMessage
13
+ #
14
+ # @param [SimplCov::Result] result the final simplecov result
15
+ # @param [String] output_filepath path to the filename
16
+ #
17
+ def initialize(result, output_filepath)
18
+ @result = result
19
+ @output_filepath = output_filepath
20
+ end
21
+
22
+ #
23
+ # Returns a nicely formatted string about the generated coverage data
24
+ #
25
+ #
26
+ # @return [String]
27
+ #
28
+ def to_s
29
+ "Coverage report generated" \
30
+ " for #{command_name}" \
31
+ " to #{output_filepath}." \
32
+ " #{covered_lines} / #{total_lines} LOC (#{covered_percent.round(2)}%) covered."
33
+ end
34
+ alias inspect to_s
35
+
36
+ private
37
+
38
+ attr_reader :result, :output_filepath
39
+
40
+ def command_name
41
+ result.command_name
42
+ end
43
+
44
+ def covered_lines
45
+ result.total_lines
46
+ end
47
+
48
+ def total_lines
49
+ result.total_lines
50
+ end
51
+
52
+ def covered_percent
53
+ result.covered_percent
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SimpleCov
4
+ module Oj
5
+ #
6
+ # Massage result into a hash that can be dumped to json by OJ
7
+ #
8
+ # @author Mikael Henriksson <mikael@mhenrixon.se>
9
+ #
10
+ class ResultToHash
11
+ #
12
+ # Initialize a new ResultToHash
13
+ #
14
+ # @param [SimpleCov::Result] result the final result from simplecov
15
+ #
16
+ def initialize(result)
17
+ @result = result
18
+ @data = {
19
+ timestamp: result.created_at.to_i,
20
+ command_name: result.command_name,
21
+ files: [],
22
+ }
23
+ end
24
+
25
+ #
26
+ # Create a hash from the result that can be used for JSON dumping
27
+ #
28
+ #
29
+ # @return [Hash]
30
+ #
31
+ def to_h
32
+ extract_files
33
+ extract_metrics
34
+ data
35
+ end
36
+
37
+ private
38
+
39
+ attr_reader :result, :data
40
+
41
+ # @private
42
+ def extract_files
43
+ data[:files] = source_file_collection
44
+ end
45
+
46
+ # @private
47
+ def source_file_collection
48
+ result.files.each_with_object([]) do |source_file, memo|
49
+ next unless result.filenames.include?(source_file.filename)
50
+
51
+ memo << SourceFileWrapper.new(source_file).to_h
52
+ end
53
+ end
54
+
55
+ # @private
56
+ def extract_metrics
57
+ data[:metrics] = ResultWrapper.new(result).to_h
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SimpleCov
4
+ module Oj
5
+ #
6
+ # Representation of the simplecov result including it's coverage data, source code,
7
+ # source lines and featuring helpers to interpret that data.
8
+ #
9
+ # @author Mikael Henriksson <mikael@mhenrixon.com>
10
+ #
11
+ class ResultWrapper
12
+ #
13
+ # Wrap the SimpleCov::Result to enable hash conversion without monkey patching
14
+ #
15
+ # @param [SimpleCov::Result] result the simplecov result to generate hash for
16
+ #
17
+ def initialize(result)
18
+ @result = result
19
+ end
20
+
21
+ #
22
+ # Returns a nicely formatted hash from the simplecov result data
23
+ #
24
+ #
25
+ # @return [Hash]
26
+ #
27
+ def to_h
28
+ {
29
+ covered_percent: covered_percent,
30
+ covered_strength: covered_strength,
31
+ covered_lines: covered_lines,
32
+ total_lines: total_lines,
33
+ }
34
+ end
35
+
36
+ private
37
+
38
+ attr_reader :result
39
+
40
+ # @private
41
+ def covered_strength
42
+ return 0.0 unless (coverage = result.covered_strength)
43
+
44
+ coverage.nan? ? 0.0 : coverage
45
+ end
46
+
47
+ # @private
48
+ def covered_percent
49
+ result.covered_percent
50
+ end
51
+
52
+ # @private
53
+ def covered_lines
54
+ result.covered_lines
55
+ end
56
+
57
+ # @private
58
+ def total_lines
59
+ result.total_lines
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,82 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SimpleCov
4
+ module Oj
5
+ #
6
+ # Representation of a source file including it's coverage data, source code,
7
+ # source lines and featuring helpers to interpret that data.
8
+ #
9
+ # @author Mikael Henriksson <mikael@mhenrixon.com>
10
+ #
11
+ class SourceFileWrapper
12
+ #
13
+ # Wrap the SimpleCov::SourceFile to enable hash conversion without monkey patching
14
+ #
15
+ # @param [SimpleCov::SourceFile] source_file the source file to generate hash for
16
+ #
17
+ def initialize(source_file)
18
+ @source_file = source_file
19
+ end
20
+
21
+ #
22
+ # Returns a nicely formatted hash from the source file data
23
+ #
24
+ #
25
+ # @return [Hash]
26
+ #
27
+ def to_h
28
+ { filename: filename,
29
+ covered_percent: covered_percent,
30
+ coverage: coverage_data,
31
+ covered_strength: covered_strength,
32
+ covered_lines: covered_lines_count,
33
+ lines_of_code: lines_of_code }
34
+ end
35
+
36
+ private
37
+
38
+ attr_reader :source_file
39
+
40
+ # @private
41
+ def coverage_data
42
+ if SimpleCov::SourceFile.instance_methods.include?(:coverage_data)
43
+ source_file.coverage_data
44
+ else
45
+ source_file.coverage
46
+ end
47
+ end
48
+
49
+ # @private
50
+ def covered_lines
51
+ source_file.covered_lines
52
+ end
53
+
54
+ # @private
55
+ def covered_lines_count
56
+ covered_lines.count
57
+ end
58
+
59
+ # @private
60
+ def covered_percent
61
+ source_file.covered_percent
62
+ end
63
+
64
+ # @private
65
+ def covered_strength
66
+ return 0.0 unless (coverage = source_file.covered_strength)
67
+
68
+ coverage.nan? ? 0.0 : coverage
69
+ end
70
+
71
+ # @private
72
+ def filename
73
+ source_file.filename
74
+ end
75
+
76
+ # @private
77
+ def lines_of_code
78
+ source_file.lines_of_code
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SimpleCov
4
+ #
5
+ # Module Oj provides formatting of simplecov results as JSON using the oj gem
6
+ #
7
+ # @author Mikael Henriksson <mikael@zoolutions.se>
8
+ #
9
+ module Oj
10
+ #
11
+ # @return [String] the current version of the gem
12
+ VERSION = "0.18.0"
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "simplecov"
4
+ require "oj"
5
+
6
+ require "simple_cov/oj/result_wrapper"
7
+ require "simple_cov/oj/source_file_wrapper"
8
+ require "simple_cov/oj/result_to_hash"
9
+ require "simple_cov/oj/result_to_hash"
10
+ require "simple_cov/oj/output_message"
11
+ require "simple_cov/oj/version"
12
+ require "simple_cov/formatter/oj_formatter"
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ desc "Generate a Changelog"
4
+ task :changelog do
5
+ # rubocop:disable Style/MutableConstant
6
+ CHANGELOG_CMD ||= %w[
7
+ github_changelog_generator
8
+ --no-verbose
9
+ --no-http-cache
10
+ --user
11
+ mhenrixon
12
+ --project
13
+ simplecov-oj
14
+ --token
15
+ ]
16
+ ADD_CHANGELOG_CMD ||= "git add --all"
17
+ COMMIT_CHANGELOG_CMD ||= "git commit -a -m 'Update changelog'"
18
+ # rubocop:enable Style/MutableConstant
19
+
20
+ sh("git checkout master")
21
+ sh(*CHANGELOG_CMD.push(ENV["CHANGELOG_GITHUB_TOKEN"]))
22
+ sh(ADD_CHANGELOG_CMD)
23
+ sh(COMMIT_CHANGELOG_CMD)
24
+ end
@@ -0,0 +1,80 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.describe SimpleCov::Formatter::OjFormatter do
4
+ let(:formatter) { described_class.new }
5
+ let(:result) { instance_double(SimpleCov::Result) }
6
+ let(:command_name) { "RSpec" }
7
+ let(:created_at) { Time.now.to_s }
8
+ let(:foo) { instance_double(SimpleCov::SourceFile) }
9
+ let(:foo_line_list) { instance_double(Array) }
10
+ let(:bar) { instance_double(SimpleCov::SourceFile) }
11
+ let(:bar_line_list) { instance_double(Array) }
12
+
13
+ describe "#format" do
14
+ subject(:format) { formatter.format(result) }
15
+
16
+ before do
17
+ allow(result).to receive(:created_at).and_return(created_at)
18
+ allow(result).to receive(:command_name).and_return(command_name)
19
+ allow(result).to receive(:covered_lines).and_return(11)
20
+ allow(result).to receive(:covered_percent).and_return(73.33)
21
+ allow(result).to receive(:covered_strength).twice.and_return(0.87)
22
+ allow(result).to receive(:files).and_return([foo, bar])
23
+ allow(result).to receive(:filenames).twice.and_return(["/lib/foo.rb", "/lib/bar.rb"])
24
+ allow(result).to receive(:total_lines).and_return(15)
25
+
26
+ allow(foo).to receive(:filename).twice.and_return("/lib/foo.rb")
27
+ allow(foo).to receive(:covered_percent).and_return(50.0)
28
+ if SimpleCov::SourceFile.instance_methods.include?(:coverage_data)
29
+ allow(foo).to receive(:coverage_data).and_return([1, nil, 0, 0, nil, 1, nil])
30
+ else
31
+ allow(foo).to receive(:coverage).and_return([1, nil, 0, 0, nil, 1, nil])
32
+ end
33
+ allow(foo).to receive(:covered_strength).twice.and_return(0.50)
34
+ allow(foo).to receive(:covered_lines).and_return(foo_line_list)
35
+ allow(foo).to receive(:lines_of_code).and_return(4)
36
+
37
+ allow(foo_line_list).to receive(:count).and_return(2)
38
+
39
+ allow(bar).to receive(:filename).twice.and_return("/lib/bar.rb")
40
+ allow(bar).to receive(:covered_percent).and_return(71.42)
41
+ if SimpleCov::SourceFile.instance_methods.include?(:coverage_data)
42
+ allow(bar).to receive(:coverage_data).and_return([nil, 1, nil, 1, 1, 1, 0, 0, nil, 1, nil])
43
+ else
44
+ allow(bar).to receive(:coverage).and_return([nil, 1, nil, 1, 1, 1, 0, 0, nil, 1, nil])
45
+ end
46
+ allow(bar).to receive(:covered_strength).twice.and_return(0.71)
47
+ allow(bar).to receive(:covered_lines).and_return(bar_line_list)
48
+ allow(bar).to receive(:lines_of_code).and_return(7)
49
+
50
+ allow(bar_line_list).to receive(:count).and_return(5)
51
+ end
52
+
53
+ it "formats json nicely" do
54
+ expect(format).to eq({
55
+ "timestamp" => created_at.to_i,
56
+ "command_name" => "RSpec",
57
+ "files" => [
58
+ { "filename" => "/lib/foo.rb",
59
+ "covered_percent" => 50.0,
60
+ "coverage" => [1, nil, 0, 0, nil, 1, nil],
61
+ "covered_strength" => 0.50,
62
+ "covered_lines" => 2,
63
+ "lines_of_code" => 4 },
64
+ { "filename" => "/lib/bar.rb",
65
+ "covered_percent" => 71.42,
66
+ "coverage" => [nil, 1, nil, 1, 1, 1, 0, 0, nil, 1, nil],
67
+ "covered_strength" => 0.71,
68
+ "covered_lines" => 5,
69
+ "lines_of_code" => 7 },
70
+ ],
71
+ "metrics" => {
72
+ "covered_percent" => 73.33,
73
+ "covered_strength" => 0.87,
74
+ "covered_lines" => 11,
75
+ "total_lines" => 15,
76
+ },
77
+ }.to_json)
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "simplecov-oj"
4
+ require "pry"
5
+
6
+ RSpec.configure do |config|
7
+ config.define_derived_metadata do |meta|
8
+ meta[:aggregate_failures] = true
9
+ end
10
+
11
+ config.expect_with :rspec do |expectations|
12
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
13
+ end
14
+
15
+ config.mock_with :rspec do |mocks|
16
+ mocks.verify_partial_doubles = true
17
+ end
18
+
19
+ config.shared_context_metadata_behavior = :apply_to_host_groups
20
+ config.filter_run_when_matching :focus
21
+ config.example_status_persistence_file_path = "spec/.rspec-status"
22
+ config.disable_monkey_patching!
23
+ config.warnings = true
24
+ config.default_formatter = "doc" if config.files_to_run.one?
25
+ config.profile_examples = 10
26
+ config.order = :random
27
+
28
+ Kernel.srand config.seed
29
+ end
30
+
31
+ RSpec::Support::ObjectFormatter.default_instance.max_formatted_output_length = 10_000
metadata ADDED
@@ -0,0 +1,217 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: simplecov-oj
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.18.0
5
+ platform: ruby
6
+ authors:
7
+ - Mikael Henriksson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-01-29 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: oj
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '2.0'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: simplecov
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '0.14'
40
+ - - "<"
41
+ - !ruby/object:Gem::Version
42
+ version: '1.0'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '0.14'
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '1.0'
53
+ - !ruby/object:Gem::Dependency
54
+ name: appraisal
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: '0'
60
+ type: :development
61
+ prerelease: false
62
+ version_requirements: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
67
+ - !ruby/object:Gem::Dependency
68
+ name: bundler
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: '2.1'
74
+ type: :development
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '2.1'
81
+ - !ruby/object:Gem::Dependency
82
+ name: gem-release
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '2.0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '2.0'
95
+ - !ruby/object:Gem::Dependency
96
+ name: rake
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '13.0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '13.0'
109
+ - !ruby/object:Gem::Dependency
110
+ name: rspec
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '3.9'
116
+ type: :development
117
+ prerelease: false
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '3.9'
123
+ - !ruby/object:Gem::Dependency
124
+ name: github-markup
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '3.0'
130
+ type: :development
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: '3.0'
137
+ - !ruby/object:Gem::Dependency
138
+ name: github_changelog_generator
139
+ requirement: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '1.14'
144
+ type: :development
145
+ prerelease: false
146
+ version_requirements: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '1.14'
151
+ - !ruby/object:Gem::Dependency
152
+ name: yard
153
+ requirement: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '0.9'
158
+ type: :development
159
+ prerelease: false
160
+ version_requirements: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - "~>"
163
+ - !ruby/object:Gem::Version
164
+ version: '0.9'
165
+ description: 'Oj formatter for SimpleCov code coverage tool for ruby 2.4+
166
+
167
+ '
168
+ email:
169
+ - mikael@mhenrixon.com
170
+ executables: []
171
+ extensions: []
172
+ extra_rdoc_files: []
173
+ files:
174
+ - CHANGELOG.md
175
+ - LICENSE
176
+ - README.md
177
+ - lib/simple_cov/formatter/oj_formatter.rb
178
+ - lib/simple_cov/oj/output_message.rb
179
+ - lib/simple_cov/oj/result_to_hash.rb
180
+ - lib/simple_cov/oj/result_wrapper.rb
181
+ - lib/simple_cov/oj/source_file_wrapper.rb
182
+ - lib/simple_cov/oj/version.rb
183
+ - lib/simplecov-oj.rb
184
+ - lib/tasks/changelog.rake
185
+ - spec/simple_cov/formatter/oj_formatter_spec.rb
186
+ - spec/spec_helper.rb
187
+ homepage: https://github.com/mhenrixon/simplecov-oj
188
+ licenses:
189
+ - MIT
190
+ metadata:
191
+ homepage_uri: https://github.com/mhenrixon/simplecov-oj
192
+ bug_tracker_uri: https://github.com/mhenrixon/mhenrixon/issues
193
+ documentation_uri: https://mhenrixon.github.io/simplecov-oj
194
+ source_code_uri: https://github.com/mhenrixon/simplecov-oj
195
+ changelog_uri: https://github.com/mhenrixon/simplecov-oj/CHANGELOG.md
196
+ post_install_message:
197
+ rdoc_options: []
198
+ require_paths:
199
+ - lib
200
+ required_ruby_version: !ruby/object:Gem::Requirement
201
+ requirements:
202
+ - - ">="
203
+ - !ruby/object:Gem::Version
204
+ version: '0'
205
+ required_rubygems_version: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ requirements: []
211
+ rubygems_version: 3.1.2
212
+ signing_key:
213
+ specification_version: 4
214
+ summary: Oj formatter for SimpleCov code coverage tool for ruby 2.4+
215
+ test_files:
216
+ - spec/spec_helper.rb
217
+ - spec/simple_cov/formatter/oj_formatter_spec.rb