test-prof 1.6.2 → 1.6.3

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: 72badfce23d7dbe5d30e831145aeda6d6a0764b8fc4216fbacd1ee5feaf4ff10
4
- data.tar.gz: 3ee75570775da64444ed2a000c6cf851690bbe2b886b65c595e7e8cef65c7dde
3
+ metadata.gz: 39f68f82427dfea9fb815614f6fce02fdfd7291fa1227e5c2a224f4c6483e091
4
+ data.tar.gz: cd76ddbed3548fa987b8828727e7ddd6f81639b39b8d06d5e8c41f7aa84fba10
5
5
  SHA512:
6
- metadata.gz: 4b1f225a579283031fa9596b33e83349c70b099e896c30ec64d22cce39840d363f18e814e1568e44f15949ac3806ff9135672afabe071b82c627eab5a66aba9b
7
- data.tar.gz: 633da253533f3e5e1cc62c7c96868611bb725b6c1448d43d9be44ec1afb5093eb5ac08dd6f5b54f8300318b8d97618c2b89f218aa397740b70ebe63af2c22520
6
+ metadata.gz: 329db71243834a0641c490b3daaf77cfc5c352b1995c9b01dac49c0824619070d372e5eda7d64f76d97226087cfb2b9ad6d7e58823297e0e8ac53e5d74d82878
7
+ data.tar.gz: 72830459616db6692c3c58621457a459122aadc8609472f1a38b827025a19da11784b68aee86abc27d535ca1ecf474b18cd45d0c60c33b5490de3f4c0a314d18
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## master (unreleased)
4
4
 
5
+ ## 1.6.3 (2026-07-20)
6
+
7
+ - Fix `before_all` firing N times in Minitest 6. ([@palkan][])
8
+
5
9
  ## 1.6.2 (2026-07-16)
6
10
 
7
11
  - Add `logger` as a runtime dependency (it's no longer a default gem in Ruby 4.0). ([@moznion][])
@@ -14,7 +14,7 @@ module TestProf
14
14
  end
15
15
 
16
16
  unless @overrides.empty?
17
- variation += @overrides.keys.sort.to_s.gsub(/[\\":]/, "")
17
+ variation += @overrides.keys.map(&:to_sym).sort.to_s.gsub(/[\\":]/, "")
18
18
  end
19
19
  end
20
20
  end
@@ -6,15 +6,29 @@ Minitest.singleton_class.prepend(Module.new do
6
6
  attr_reader :previous_klass
7
7
  @previous_klass = nil
8
8
 
9
- def run_one_method(klass, method_name)
10
- return super unless klass.respond_to?(:parallelized) && klass.parallelized
9
+ # Minitest 6+
10
+ if Minitest::Runnable.method_defined?(:run_suite)
11
+ def run(klass, *rest)
12
+ return super unless klass.respond_to?(:parallelized) && klass.parallelized
11
13
 
12
- if @previous_klass && @previous_klass != klass
13
- @previous_klass.before_all_executor&.deactivate!
14
+ if @previous_klass && @previous_klass != klass
15
+ @previous_klass.before_all_executor&.deactivate!
16
+ end
17
+ @previous_klass = klass
18
+
19
+ super
14
20
  end
15
- @previous_klass = klass
21
+ else
22
+ def run_one_method(klass, *rest)
23
+ return super unless klass.respond_to?(:parallelized) && klass.parallelized
24
+
25
+ if @previous_klass && @previous_klass != klass
26
+ @previous_klass.before_all_executor&.deactivate!
27
+ end
28
+ @previous_klass = klass
16
29
 
17
- super
30
+ super
31
+ end
18
32
  end
19
33
  end)
20
34
 
@@ -162,13 +176,24 @@ module TestProf
162
176
  end
163
177
  end)
164
178
 
165
- singleton_class.prepend(Module.new do
166
- def run(*)
167
- super
168
- ensure
169
- before_all_executor&.deactivate! unless parallelized
170
- end
171
- end)
179
+ # Minitest 6+
180
+ if singleton_class.method_defined?(:run_suite)
181
+ singleton_class.prepend(Module.new do
182
+ def run_suite(*)
183
+ super
184
+ ensure
185
+ before_all_executor&.deactivate! unless parallelized
186
+ end
187
+ end)
188
+ else
189
+ singleton_class.prepend(Module.new do
190
+ def run(*)
191
+ super
192
+ ensure
193
+ before_all_executor&.deactivate! unless parallelized
194
+ end
195
+ end)
196
+ end
172
197
  end
173
198
 
174
199
  def after_all(&block)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module TestProf
4
- VERSION = "1.6.2"
4
+ VERSION = "1.6.3"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test-prof
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.2
4
+ version: 1.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vladimir Dementyev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-16 00:00:00.000000000 Z
11
+ date: 2026-07-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: logger