undercover 0.8.5 → 0.9.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 +4 -4
- data/.github/FUNDING.yml +15 -0
- data/.github/workflows/ruby.yml +2 -2
- data/.rubocop.yml +1 -1
- data/CHANGELOG.md +20 -1
- data/Gemfile +3 -1
- data/README.md +92 -9
- data/bin/undercover +1 -9
- data/lib/undercover/ast_branch_annotator.rb +44 -32
- data/lib/undercover/changeset.rb +29 -5
- data/lib/undercover/cli.rb +96 -17
- data/lib/undercover/coverage_index.rb +19 -0
- data/lib/undercover/coverage_root.rb +73 -0
- data/lib/undercover/erb_extractor.rb +32 -0
- data/lib/undercover/erb_node.rb +20 -0
- data/lib/undercover/erb_visitor.rb +42 -0
- data/lib/undercover/file_loader.rb +51 -0
- data/lib/undercover/filter_set.rb +34 -9
- data/lib/undercover/json_formatter.rb +1 -1
- data/lib/undercover/lcov_parser.rb +35 -16
- data/lib/undercover/node.rb +78 -0
- data/lib/undercover/node_visitor.rb +86 -0
- data/lib/undercover/options.rb +38 -17
- data/lib/undercover/result.rb +33 -23
- data/lib/undercover/simplecov_formatter.rb +50 -19
- data/lib/undercover/simplecov_result_adapter.rb +42 -11
- data/lib/undercover/version.rb +1 -1
- data/lib/undercover.rb +72 -35
- data/undercover.gemspec +7 -5
- metadata +29 -15
- data/lib/undercover/root_to_relative_paths.rb +0 -24
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: undercover
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.9.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jan Grodowski
|
|
@@ -38,33 +38,39 @@ dependencies:
|
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
39
|
version: '0'
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
|
-
name:
|
|
41
|
+
name: erubi
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
43
43
|
requirements:
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '
|
|
46
|
+
version: '1.13'
|
|
47
47
|
type: :runtime
|
|
48
48
|
prerelease: false
|
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
51
|
- - ">="
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '
|
|
53
|
+
version: '1.13'
|
|
54
54
|
- !ruby/object:Gem::Dependency
|
|
55
|
-
name:
|
|
55
|
+
name: prism
|
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
|
57
57
|
requirements:
|
|
58
58
|
- - ">="
|
|
59
59
|
- !ruby/object:Gem::Version
|
|
60
|
-
version:
|
|
60
|
+
version: '1.8'
|
|
61
|
+
- - "<"
|
|
62
|
+
- !ruby/object:Gem::Version
|
|
63
|
+
version: '3'
|
|
61
64
|
type: :runtime
|
|
62
65
|
prerelease: false
|
|
63
66
|
version_requirements: !ruby/object:Gem::Requirement
|
|
64
67
|
requirements:
|
|
65
68
|
- - ">="
|
|
66
69
|
- !ruby/object:Gem::Version
|
|
67
|
-
version:
|
|
70
|
+
version: '1.8'
|
|
71
|
+
- - "<"
|
|
72
|
+
- !ruby/object:Gem::Version
|
|
73
|
+
version: '3'
|
|
68
74
|
- !ruby/object:Gem::Dependency
|
|
69
75
|
name: rainbow
|
|
70
76
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -111,28 +117,28 @@ dependencies:
|
|
|
111
117
|
requirements:
|
|
112
118
|
- - ">="
|
|
113
119
|
- !ruby/object:Gem::Version
|
|
114
|
-
version: '0'
|
|
120
|
+
version: '1.0'
|
|
115
121
|
type: :runtime
|
|
116
122
|
prerelease: false
|
|
117
123
|
version_requirements: !ruby/object:Gem::Requirement
|
|
118
124
|
requirements:
|
|
119
125
|
- - ">="
|
|
120
126
|
- !ruby/object:Gem::Version
|
|
121
|
-
version: '0'
|
|
127
|
+
version: '1.0'
|
|
122
128
|
- !ruby/object:Gem::Dependency
|
|
123
129
|
name: simplecov_json_formatter
|
|
124
130
|
requirement: !ruby/object:Gem::Requirement
|
|
125
131
|
requirements:
|
|
126
|
-
- - "
|
|
132
|
+
- - "~>"
|
|
127
133
|
- !ruby/object:Gem::Version
|
|
128
|
-
version: '0'
|
|
134
|
+
version: '0.1'
|
|
129
135
|
type: :runtime
|
|
130
136
|
prerelease: false
|
|
131
137
|
version_requirements: !ruby/object:Gem::Requirement
|
|
132
138
|
requirements:
|
|
133
|
-
- - "
|
|
139
|
+
- - "~>"
|
|
134
140
|
- !ruby/object:Gem::Version
|
|
135
|
-
version: '0'
|
|
141
|
+
version: '0.1'
|
|
136
142
|
email:
|
|
137
143
|
- jgrodowski@gmail.com
|
|
138
144
|
executables:
|
|
@@ -141,6 +147,7 @@ extensions: []
|
|
|
141
147
|
extra_rdoc_files: []
|
|
142
148
|
files:
|
|
143
149
|
- ".codebeatsettings"
|
|
150
|
+
- ".github/FUNDING.yml"
|
|
144
151
|
- ".github/dependabot.yml"
|
|
145
152
|
- ".github/workflows/ruby.yml"
|
|
146
153
|
- ".gitignore"
|
|
@@ -164,13 +171,20 @@ files:
|
|
|
164
171
|
- lib/undercover/ast_branch_annotator.rb
|
|
165
172
|
- lib/undercover/changeset.rb
|
|
166
173
|
- lib/undercover/cli.rb
|
|
174
|
+
- lib/undercover/coverage_index.rb
|
|
175
|
+
- lib/undercover/coverage_root.rb
|
|
176
|
+
- lib/undercover/erb_extractor.rb
|
|
177
|
+
- lib/undercover/erb_node.rb
|
|
178
|
+
- lib/undercover/erb_visitor.rb
|
|
179
|
+
- lib/undercover/file_loader.rb
|
|
167
180
|
- lib/undercover/filter_set.rb
|
|
168
181
|
- lib/undercover/formatter.rb
|
|
169
182
|
- lib/undercover/json_formatter.rb
|
|
170
183
|
- lib/undercover/lcov_parser.rb
|
|
184
|
+
- lib/undercover/node.rb
|
|
185
|
+
- lib/undercover/node_visitor.rb
|
|
171
186
|
- lib/undercover/options.rb
|
|
172
187
|
- lib/undercover/result.rb
|
|
173
|
-
- lib/undercover/root_to_relative_paths.rb
|
|
174
188
|
- lib/undercover/simplecov_formatter.rb
|
|
175
189
|
- lib/undercover/simplecov_result_adapter.rb
|
|
176
190
|
- lib/undercover/version.rb
|
|
@@ -187,7 +201,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
187
201
|
requirements:
|
|
188
202
|
- - ">="
|
|
189
203
|
- !ruby/object:Gem::Version
|
|
190
|
-
version: 3.
|
|
204
|
+
version: 3.2.0
|
|
191
205
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
192
206
|
requirements:
|
|
193
207
|
- - ">="
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Undercover
|
|
4
|
-
module RootToRelativePaths
|
|
5
|
-
# Needed if undercover is running inside nested subdirectories (e.g. in a monorepo app), where
|
|
6
|
-
# the git paths are rooted deeper than the paths in the coverage report.
|
|
7
|
-
# If that is the case, trim the git filepath to match the local relative path, assumming undercover is
|
|
8
|
-
# running in the correct directory (has to be equal to SimpleCov.root for paths to match)
|
|
9
|
-
# @param filepath[String]
|
|
10
|
-
# @return String
|
|
11
|
-
def fix_relative_filepath(filepath)
|
|
12
|
-
return filepath unless @code_dir
|
|
13
|
-
|
|
14
|
-
code_dir_abs = File.expand_path(@code_dir)
|
|
15
|
-
|
|
16
|
-
if Pathname.new(Dir.pwd).ascend.any? { |p| p.to_s == code_dir_abs }
|
|
17
|
-
prefix_to_skip = Pathname.new(Dir.pwd).relative_path_from(code_dir_abs).to_s
|
|
18
|
-
return filepath.delete_prefix(prefix_to_skip).gsub(/\A\//, '')
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
filepath
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|