deep-cover-core 0.8.0 → 0.8.1

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: 0c5b9a12436fc45584c37140a696c593464e060308642cd377714628e4171711
4
- data.tar.gz: 39844dab92a3c623c837a9aa2d7efe442053c0d9e2416646ec6af92b9f32b8c0
3
+ metadata.gz: 9c49ed3d6ce339e7573d82e4f8a48963ced23fdbcd378a44e9d81660accc8455
4
+ data.tar.gz: a7e234a5b4bc9abafc51d59b1fea6dfb91549ab4a28d4ecc7c9b78f093542697
5
5
  SHA512:
6
- metadata.gz: cfc8cf262c0560bb163599e02f40e04395ada31da9fcf5938e4aad2867cbaed88bd0985907a9a3304e5ac5de863f68ea21abae31e0262aba9bddc717f72ec842
7
- data.tar.gz: 42568873920903fd21e626b36530edf3a78ef03f0eb045807588fd2cf0954b3a9fc7ff4456ae621508fa788bcd2975e5ba808f6ef81dabd2228f30ab45f6c80b
6
+ metadata.gz: 8e702d5ae1e9ce0e2044b9b53b7b842f0ccf4eda04d240afaf3d105db6b8a39bd464edfa9d4fc654159a757902335d9b6fba52ab872c429a2c940173fe01b665
7
+ data.tar.gz: 5f8b320bca0b9c78198f35cf5eba395d6fcbeb65719b797397aac92a9ba50929f946a07665c06dde57a69677a99a4aa003f8da38902c9b2f64caad23c9af5820
@@ -45,7 +45,7 @@ Gem::Specification.new do |spec|
45
45
  # About every single release breaks something
46
46
  # Ruby 2.1 is no longer supported
47
47
  if RUBY_VERSION >= '2.3.0'
48
- spec.add_development_dependency 'rubocop', '~> 0.74.0'
48
+ spec.add_development_dependency 'rubocop', '~> 0.81.0'
49
49
  spec.add_development_dependency 'rubocop-performance'
50
50
  end
51
51
  end
@@ -48,7 +48,7 @@ module DeepCover
48
48
  memoize :percent
49
49
 
50
50
  def percent
51
- Analyser::StatsBase.new(to_h.transform_values { |v| (100 * v).fdiv(total).round(DECIMALS) })
51
+ Analyser::StatsBase.new(**to_h.transform_values { |v| (100 * v).fdiv(total).round(DECIMALS) })
52
52
  end
53
53
  end
54
54
  end
@@ -51,7 +51,7 @@ module DeepCover
51
51
  raise ArgumentError, 'No block is accepted' if block_given?
52
52
  unless keywords.empty?
53
53
  keywords = check_uncovered(keywords)
54
- set(keywords.to_h { |kind| [FILTER_NAME[kind], false] })
54
+ set(**keywords.to_h { |kind| [FILTER_NAME[kind], false] })
55
55
  end
56
56
  OPTIONALLY_COVERED - Config.options_to_ignored(**@options)
57
57
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module DeepCover
4
4
  class Coverage
5
- class Analysis < Struct.new(:covered_codes, :options)
5
+ class Analysis < StructWithOptions.new(:covered_codes)
6
6
  include Memoize
7
7
  memoize :analyser_map, :stat_map
8
8
 
@@ -31,10 +31,7 @@ module top_level_module::DeepCover # rubocop:disable Naming/ClassAndModuleCamelC
31
31
  # returns a TrackerHitsPerPath
32
32
  def load_trackers
33
33
  tracker_hits_per_path_hashes = tracker_files.map do |full_path|
34
- JSON.parse(full_path.binread).transform_keys(&:to_sym).yield_self do |version:, tracker_hits_per_path:|
35
- raise "dump version mismatch: #{version}, currently #{VERSION}" unless version == VERSION
36
- tracker_hits_per_path
37
- end
34
+ check_tracker_file(**JSON.parse(full_path.binread).transform_keys(&:to_sym))
38
35
  end
39
36
 
40
37
  self.class.merge_tracker_hits_per_paths(*tracker_hits_per_path_hashes)
@@ -56,7 +53,7 @@ module top_level_module::DeepCover # rubocop:disable Naming/ClassAndModuleCamelC
56
53
  delete_trackers
57
54
  begin
58
55
  dir_path.rmdir
59
- rescue SystemCallError # rubocop:disable Lint/HandleExceptions
56
+ rescue SystemCallError # rubocop:disable Lint/SuppressedException
60
57
  end
61
58
  end
62
59
 
@@ -88,6 +85,11 @@ module top_level_module::DeepCover # rubocop:disable Naming/ClassAndModuleCamelC
88
85
 
89
86
  private
90
87
 
88
+ def check_tracker_file(version:, tracker_hits_per_path:)
89
+ raise "dump version mismatch: #{version}, currently #{VERSION}" unless version == VERSION
90
+ tracker_hits_per_path
91
+ end
92
+
91
93
  def create_directory_if_needed
92
94
  dir_path.mkpath
93
95
  end
@@ -68,7 +68,7 @@ module DeepCover
68
68
  end
69
69
  end
70
70
 
71
- class CoveredCodeConverter < Struct.new(:covered_code, :options)
71
+ class CoveredCodeConverter < StructWithOptions.new(:covered_code)
72
72
  include Converters
73
73
 
74
74
  def node_analyser
@@ -172,7 +172,7 @@ module DeepCover
172
172
 
173
173
  class << self
174
174
  def report(coverage, **options)
175
- new(coverage, options).report
175
+ new(coverage, **options).report
176
176
  end
177
177
 
178
178
  def available?
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DeepCover
4
+ module StructWithOptions
5
+ module Initializer
6
+ def initialize(*args, **options)
7
+ super(*args, options)
8
+ end
9
+ end
10
+
11
+ def self.new(*args)
12
+ Struct.new(*args, :options).tap do |klass|
13
+ klass.include Initializer
14
+ klass.define_singleton_method(:new, Class.method(:new))
15
+ end
16
+ end
17
+ end
18
+ end
@@ -3,5 +3,5 @@
3
3
  top_level_module = Thread.current['_deep_cover_top_level_module'] || Object
4
4
 
5
5
  module top_level_module::DeepCover # rubocop:disable Naming/ClassAndModuleCamelCase
6
- VERSION = '0.8.0'
6
+ VERSION = '0.8.1'
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deep-cover-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marc-André Lafortune
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2020-04-23 00:00:00.000000000 Z
12
+ date: 2020-05-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: parser
@@ -143,14 +143,14 @@ dependencies:
143
143
  requirements:
144
144
  - - "~>"
145
145
  - !ruby/object:Gem::Version
146
- version: 0.74.0
146
+ version: 0.81.0
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
151
  - - "~>"
152
152
  - !ruby/object:Gem::Version
153
- version: 0.74.0
153
+ version: 0.81.0
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: rubocop-performance
156
156
  requirement: !ruby/object:Gem::Requirement
@@ -303,6 +303,7 @@ files:
303
303
  - lib/deep_cover/tools/silence_warnings.rb
304
304
  - lib/deep_cover/tools/slice.rb
305
305
  - lib/deep_cover/tools/strip_heredoc.rb
306
+ - lib/deep_cover/tools/struct_with_options.rb
306
307
  - lib/deep_cover/tools/to_regexp.rb
307
308
  - lib/deep_cover/tools/truncate_backtrace.rb
308
309
  - lib/deep_cover/tools/with_unbundled_env.rb
@@ -326,7 +327,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
326
327
  - !ruby/object:Gem::Version
327
328
  version: '0'
328
329
  requirements: []
329
- rubygems_version: 3.0.3
330
+ rubygems_version: 3.2.0.pre1
330
331
  signing_key:
331
332
  specification_version: 4
332
333
  summary: In depth coverage of your Ruby code.