pronto-undercover 0.1.1 → 0.1.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3de1d2e492a7103e77d719748a7271d48bb3030413bc226ff9d709fb10bbd198
4
- data.tar.gz: 35a280e62e729d415cb8763ad10671dce35db4127da44319c8be6d51e146a8f1
3
+ metadata.gz: f16e3d54ccfa1eb353e26f3f6b8131dfbbc73c9fb9c7c5793bf5d349d45853e1
4
+ data.tar.gz: 529446093c7e3c3cc464cc6ade0d429c9934dce288a21410f01d581bd70f8900
5
5
  SHA512:
6
- metadata.gz: d468fe8c175ecbe4ded4431e8f0102258166f1dbadaa33ed28b93d0f8c88fcface1ca4c4f3c8c21b3063f6c6844fb565067824f0133a99482289e126cbecaedc
7
- data.tar.gz: 7f3472e588da2f7f3028cde205a903a7e7d3d64e8ec1e83f59542df2d4c2aa0a70ee4829789719c7817d01ad5fb8d2e7272e5f7cb8224f68ef00a2d6a34fe0e1
6
+ metadata.gz: 1ec5ad40ae074c10a0b6975d9573fa54463019b180cfbf94fc24e415cec020cf071d8c1fbbdf244d27e40dfddec6c60955c4e709038f0eecf75f6f88bc2ca912
7
+ data.tar.gz: a36733b06b41128f39a08d2a41f73090579db0592535d90c0bfb0f7a650254ec3eb3387396aa091d62eb8d875f26a724f51060e745fa48f912a07a13bf133a09
data/.rubocop.yml CHANGED
@@ -1,5 +1,6 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.4.4
2
+ TargetRubyVersion: 2.5
3
+ NewCops: enable
3
4
 
4
5
  Style/RegexpLiteral:
5
6
  EnforcedStyle: slashes
data/.travis.yml CHANGED
@@ -1,7 +1,15 @@
1
- sudo: false
2
1
  language: ruby
3
2
  rvm:
4
- - 2.5.1
5
- - 2.4.4
6
- - 2.3.4
7
- before_install: gem install bundler -v 1.16.2
3
+ - 2.7.1
4
+ - 2.6.6
5
+ - 2.5.8
6
+ - 3.0.0
7
+ allow_failures:
8
+ - 3.0.0
9
+ before_install:
10
+ - gem install bundler undercover
11
+ - gem update --system
12
+ script:
13
+ - bundle exec rake
14
+ - git pull origin master:master
15
+ - undercover --compare master
data/CHANGELOG.md ADDED
@@ -0,0 +1,26 @@
1
+ # Changelog
2
+ All notable changes to this project will be documented in this file.
3
+
4
+ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
+ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [Unreleased]
8
+
9
+ ## [0.1.6] - 2020-02-06
10
+ ### Changed
11
+ - Update pronto dependency
12
+
13
+ ## [0.1.5] - 2019-03-19
14
+ ### Added
15
+ - Use flagged_results accessor by @yassinecc
16
+
17
+ ## [0.1.4] - 2019-03-19
18
+ ### Added
19
+ - This `CHANGELOG.md`
20
+
21
+ ### Changed
22
+ - support `pronto >= 0.9`
23
+
24
+ [Unreleased]: https://github.com/grodowski/pronto-undercover/compare/v0.1.5...HEAD
25
+ [0.1.5]: https://github.com/grodowski/pronto-undercover/compare/v0.1.4...v0.1.5
26
+ [0.1.4]: https://github.com/grodowski/pronto-undercover/compare/v0.1.3...v0.1.4
@@ -17,6 +17,7 @@ module Pronto
17
17
  def last_modified
18
18
  mod = file_paths.map do |f|
19
19
  next T_ZERO unless File.exist?(f)
20
+
20
21
  File.mtime(f)
21
22
  end.max
22
23
  mod || T_ZERO
@@ -20,7 +20,7 @@ module Pronto
20
20
  return [] if !@patches || @patches.count.zero?
21
21
 
22
22
  @patches
23
- .select { |patch| patch.additions.positive? }
23
+ .select { |patch| valid_patch?(patch) }
24
24
  .map { |patch| patch_to_undercover_message(patch) }
25
25
  .flatten.compact
26
26
  rescue Errno::ENOENT => e
@@ -30,6 +30,10 @@ module Pronto
30
30
 
31
31
  private
32
32
 
33
+ def valid_patch?(patch)
34
+ patch.additions.positive? && ruby_file?(patch.new_file_full_path)
35
+ end
36
+
33
37
  # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
34
38
  def patch_to_undercover_message(patch)
35
39
  offending_line_numbers(patch).map do |warning, msg_line_no|
@@ -42,7 +46,7 @@ module Pronto
42
46
  msg = "#{warning.node.human_name} #{warning.node.name} missing tests" \
43
47
  " for line#{'s' if lines.size > 1} #{lines.join(', ')}" \
44
48
  " (coverage: #{warning.coverage_f})"
45
- Message.new(path, line, DEFAULT_LEVEL, msg)
49
+ Message.new(path, line, DEFAULT_LEVEL, msg, nil, self.class)
46
50
  end
47
51
  end
48
52
  end
@@ -51,11 +55,11 @@ module Pronto
51
55
  def undercover_warnings
52
56
  @undercover_warnings ||= ::Undercover::Report.new(
53
57
  @patch_changeset, undercover_options
54
- ).build.build_warnings
58
+ ).build.flagged_results
55
59
  end
56
60
 
57
61
  def offending_line_numbers(patch)
58
- patch_lines = patch.added_lines.map(&:position)
62
+ patch_lines = patch.added_lines.map(&:new_lineno)
59
63
  path = patch.new_file_full_path.to_s
60
64
  undercover_warnings
61
65
  .select { |warning| File.expand_path(warning.file_path) == path }
@@ -72,7 +76,9 @@ module Pronto
72
76
  end
73
77
 
74
78
  def undercover_options
75
- config = Pronto::ConfigFile.new.to_h
79
+ config = Pronto::ConfigFile.new.to_h['pronto-undercover']
80
+ return ::Undercover::Options.new.parse([]) unless config
81
+
76
82
  opts = []
77
83
  opts << "-l#{config['lcov']}" if config['lcov']
78
84
  opts << "-r#{config['ruby-syntax']}" if config['ruby-syntax']
data/lib/version.rb CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Pronto
4
4
  module UndercoverVersion
5
- VERSION = '0.1.1'
5
+ VERSION = '0.1.6'
6
6
  end
7
7
  end
@@ -18,11 +18,12 @@ Gem::Specification.new do |spec|
18
18
  f.match(/^(test|spec|features)\//)
19
19
  end
20
20
  spec.require_paths = ['lib']
21
+ spec.required_ruby_version = '>= 2.5'
21
22
 
22
- spec.add_dependency 'pronto', '~> 0.9.0'
23
- spec.add_dependency 'undercover', '~> 0.2.0'
23
+ spec.add_dependency 'pronto', '>= 0.9', '< 0.12'
24
+ spec.add_dependency 'undercover', '~> 0.3.4'
24
25
  spec.add_development_dependency 'pry'
25
- spec.add_development_dependency 'rake', '~> 10.0'
26
+ spec.add_development_dependency 'rake', '~> 13.0'
26
27
  spec.add_development_dependency 'rspec', '~> 3.0'
27
28
  spec.add_development_dependency 'rubocop'
28
29
  spec.add_development_dependency 'simplecov'
metadata CHANGED
@@ -1,43 +1,49 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pronto-undercover
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Grodowski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-09-14 00:00:00.000000000 Z
11
+ date: 2021-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pronto
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.9.0
19
+ version: '0.9'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '0.12'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '0.9'
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: 0.9.0
32
+ version: '0.12'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: undercover
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: 0.2.0
39
+ version: 0.3.4
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: 0.2.0
46
+ version: 0.3.4
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: pry
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +64,14 @@ dependencies:
58
64
  requirements:
59
65
  - - "~>"
60
66
  - !ruby/object:Gem::Version
61
- version: '10.0'
67
+ version: '13.0'
62
68
  type: :development
63
69
  prerelease: false
64
70
  version_requirements: !ruby/object:Gem::Requirement
65
71
  requirements:
66
72
  - - "~>"
67
73
  - !ruby/object:Gem::Version
68
- version: '10.0'
74
+ version: '13.0'
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: rspec
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -161,6 +167,7 @@ files:
161
167
  - ".rspec"
162
168
  - ".rubocop.yml"
163
169
  - ".travis.yml"
170
+ - CHANGELOG.md
164
171
  - Gemfile
165
172
  - LICENSE.txt
166
173
  - README.md
@@ -181,15 +188,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
181
188
  requirements:
182
189
  - - ">="
183
190
  - !ruby/object:Gem::Version
184
- version: '0'
191
+ version: '2.5'
185
192
  required_rubygems_version: !ruby/object:Gem::Requirement
186
193
  requirements:
187
194
  - - ">="
188
195
  - !ruby/object:Gem::Version
189
196
  version: '0'
190
197
  requirements: []
191
- rubyforge_project:
192
- rubygems_version: 2.7.6
198
+ rubygems_version: 3.1.4
193
199
  signing_key:
194
200
  specification_version: 4
195
201
  summary: Pronto runner for Undercover - actionable code coverage