simplecov-rspec 0.2.0 → 0.3.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/.rubocop.yml +1 -1
- data/CHANGELOG.md +28 -0
- data/README.md +1 -1
- data/lib/simplecov-rspec/version.rb +1 -1
- data/lib/simplecov-rspec.rb +49 -13
- metadata +26 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 862cb86ed8d8fab68c4634038cd69abedf062c091da28dfbf58505ef1063d4dc
|
4
|
+
data.tar.gz: a05ec0c099ccb49a93a338d28b34766740d1fbbd0fe6d2b7bf53f3037f506da7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f4d675d09258f5803030dd292da7bc89dfee3c8ba1dc3b0380470230dc02c495cfaaaac5473cba5bfcc29de665d9de2e3dbe123697ec3cde338caf1ddd5223ae
|
7
|
+
data.tar.gz: e25a543369fc68e01a7cc7ba43d43c15b387e0339237e9bc8f01f2d5fd527f030616ca5a9494a6142e36c7104804c17cc41dcc740b78edc8e69453e8862f7d4b
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,34 @@ Changes for each release are listed in this file.
|
|
4
4
|
|
5
5
|
This project adheres to [Semantic Versioning](https://semver.org/) for its releases.
|
6
6
|
|
7
|
+
## v0.3.0 (2024-09-14)
|
8
|
+
|
9
|
+
[Full Changelog](https://github.com/main-branch/simplecov-rspec/compare/v0.2.1..v0.3.0)
|
10
|
+
|
11
|
+
Changes since v0.2.1:
|
12
|
+
|
13
|
+
* 55c3812 Output the number of lines missing coverage
|
14
|
+
* 9356f64 Rename variables from "lines_not_covered" to "uncovered_lines" to be consistent
|
15
|
+
* ec637c0 Fix error in README
|
16
|
+
* 9d9cb0c Rearrange workflow definitions to have the name first
|
17
|
+
* ac8efae Update continuous integration and experimental ruby builds
|
18
|
+
* ac1da92 Use v1 tag for the semver_pr_label_check workflow
|
19
|
+
* d701393 Auto-correct new Rubocop offenses
|
20
|
+
* 0319f68 Update minimal Ruby version to 3.1
|
21
|
+
* d6b57d1 Update code climate test coverage reporter version to v9
|
22
|
+
* 02553a1 Change simplecov from a development dependency to a runtime dependency
|
23
|
+
|
24
|
+
## v0.2.1 (2024-09-10)
|
25
|
+
|
26
|
+
[Full Changelog](https://github.com/main-branch/simplecov-rspec/compare/v0.2.0..v0.2.1)
|
27
|
+
|
28
|
+
Changes since v0.2.0:
|
29
|
+
|
30
|
+
* d714b58 Simplify how the experimental ruby builds are triggered
|
31
|
+
* de79d66 Use a reusable workflow for the Semver PR label check
|
32
|
+
* d29ecac Add Semver PR Label workflow
|
33
|
+
* 0fed875 Update the version of code climate test coverage reporter
|
34
|
+
|
7
35
|
## v0.2.0 (2024-09-08)
|
8
36
|
|
9
37
|
[Full Changelog](https://github.com/main-branch/simplecov-rspec/compare/v0.1.0..v0.2.0)
|
data/README.md
CHANGED
data/lib/simplecov-rspec.rb
CHANGED
@@ -286,11 +286,11 @@ module SimpleCov
|
|
286
286
|
# @private
|
287
287
|
def output_at_exit_report
|
288
288
|
low_coverage_report if show_low_coverage_report?
|
289
|
-
|
290
|
-
$stderr.puts if show_low_coverage_report? ||
|
289
|
+
uncovered_lines_report if show_uncovered_lines_report?
|
290
|
+
$stderr.puts if show_low_coverage_report? || show_uncovered_lines_report?
|
291
291
|
end
|
292
292
|
|
293
|
-
# Whether to show the low coverage
|
293
|
+
# Whether to show the low coverage
|
294
294
|
# @return [Boolean]
|
295
295
|
# @api private
|
296
296
|
# @private
|
@@ -302,7 +302,7 @@ module SimpleCov
|
|
302
302
|
# @private
|
303
303
|
def coverage_below_threshold? = simplecov_module.result.covered_percent < coverage_threshold
|
304
304
|
|
305
|
-
# Output the low coverage
|
305
|
+
# Output the low coverage report
|
306
306
|
# @return [Void]
|
307
307
|
# @api private
|
308
308
|
# @private
|
@@ -317,23 +317,59 @@ module SimpleCov
|
|
317
317
|
# @api private
|
318
318
|
def uncovered_lines_found? = simplecov_module.result.files.any? { |source_file| source_file.missed_lines.any? }
|
319
319
|
|
320
|
-
# Whether to show
|
320
|
+
# Whether to show the uncovered lines
|
321
321
|
# @return [Boolean]
|
322
322
|
# @api private
|
323
323
|
# @private
|
324
|
-
def
|
324
|
+
def show_uncovered_lines_report? = list_uncovered_lines? && uncovered_lines_found?
|
325
325
|
|
326
|
-
#
|
326
|
+
# An uncovered line
|
327
|
+
#
|
328
|
+
# @!attribute project_filename [rw]
|
329
|
+
# The path to the file with uncovered lines relative to the project root
|
330
|
+
# @return [String]
|
331
|
+
# @api private
|
332
|
+
#
|
333
|
+
# @!attribute line_number [rw]
|
334
|
+
# The line number of the uncovered line
|
335
|
+
# @return [Integer]
|
336
|
+
# @api private
|
337
|
+
#
|
338
|
+
# @api private
|
339
|
+
UncoveredLine = Struct.new(:project_filename, :line_number)
|
340
|
+
|
341
|
+
# Return the uncovered lines from the SimpleCov result
|
342
|
+
# @return [Array<UncoveredLine>]
|
343
|
+
# @api private
|
344
|
+
def uncovered_lines
|
345
|
+
@uncovered_lines ||=
|
346
|
+
simplecov_module.result.files.flat_map do |source_file|
|
347
|
+
source_file.missed_lines.map do |line|
|
348
|
+
project_filename = File.join('.', source_file.project_filename)
|
349
|
+
UncoveredLine.new(project_filename, line.number)
|
350
|
+
end
|
351
|
+
end
|
352
|
+
end
|
353
|
+
|
354
|
+
# Return the singular or plural form of a word based on the count
|
355
|
+
# @param count [Integer] the count
|
356
|
+
# @param singular [String] the singular form of the phrase
|
357
|
+
# @param plural [String] the plural form of the phrase
|
358
|
+
# @return [String]
|
359
|
+
# @api private
|
360
|
+
def pluralize(count, singular, plural) = count == 1 ? singular : plural
|
361
|
+
|
362
|
+
# Output the uncovered lines
|
327
363
|
# @return [Void]
|
328
364
|
# @api private
|
329
365
|
# @private
|
330
|
-
def
|
366
|
+
def uncovered_lines_report
|
331
367
|
$stderr.puts
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
368
|
+
count = uncovered_lines.count
|
369
|
+
things = pluralize(uncovered_lines.count, 'line is', 'lines are')
|
370
|
+
$stderr.puts "#{count} #{things} not covered by tests:\n"
|
371
|
+
uncovered_lines.each do |uncovered_line|
|
372
|
+
$stderr.puts " #{uncovered_line.project_filename}:#{uncovered_line.line_number}"
|
337
373
|
end
|
338
374
|
end
|
339
375
|
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simplecov-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Couball
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-09-
|
11
|
+
date: 2024-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: simplecov
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.22'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0.22'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: bundler-audit
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -30,14 +44,14 @@ dependencies:
|
|
30
44
|
requirements:
|
31
45
|
- - "~>"
|
32
46
|
- !ruby/object:Gem::Version
|
33
|
-
version: '1.
|
47
|
+
version: '1.5'
|
34
48
|
type: :development
|
35
49
|
prerelease: false
|
36
50
|
version_requirements: !ruby/object:Gem::Requirement
|
37
51
|
requirements:
|
38
52
|
- - "~>"
|
39
53
|
- !ruby/object:Gem::Version
|
40
|
-
version: '1.
|
54
|
+
version: '1.5'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: fuubar
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,28 +100,14 @@ dependencies:
|
|
86
100
|
requirements:
|
87
101
|
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
|
-
version: '1.
|
103
|
+
version: '1.66'
|
90
104
|
type: :development
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
108
|
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version: '1.
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: simplecov
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0.22'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0.22'
|
110
|
+
version: '1.66'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: simplecov-lcov
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -209,8 +209,8 @@ licenses:
|
|
209
209
|
metadata:
|
210
210
|
allowed_push_host: https://rubygems.org
|
211
211
|
homepage_uri: https://github.com/main-branch/simplecov-rspec
|
212
|
-
changelog_uri: https://rubydoc.info/gems/simplecov-rspec/0.
|
213
|
-
documentation_uri: https://rubydoc.info/gems/simplecov-rspec/0.
|
212
|
+
changelog_uri: https://rubydoc.info/gems/simplecov-rspec/0.3.0/file/CHANGELOG.md
|
213
|
+
documentation_uri: https://rubydoc.info/gems/simplecov-rspec/0.3.0
|
214
214
|
rubygems_mfa_required: 'true'
|
215
215
|
post_install_message:
|
216
216
|
rdoc_options: []
|
@@ -220,13 +220,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
220
220
|
requirements:
|
221
221
|
- - ">="
|
222
222
|
- !ruby/object:Gem::Version
|
223
|
-
version: 3.
|
223
|
+
version: 3.1.0
|
224
224
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
225
225
|
requirements:
|
226
226
|
- - ">="
|
227
227
|
- !ruby/object:Gem::Version
|
228
228
|
version: '0'
|
229
|
-
requirements:
|
229
|
+
requirements:
|
230
|
+
- 'Platform: Mac, Linux, or Windows'
|
231
|
+
- 'Ruby: MRI 3.1 or later, TruffleRuby 24 or later, or JRuby 9.4 or later'
|
230
232
|
rubygems_version: 3.5.16
|
231
233
|
signing_key:
|
232
234
|
specification_version: 4
|