minitest 5.18.0 → 5.25.5

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: 27d1d24e16ba576cc5a425d6e09e3de81465d10104a647c21ad9a5df36be1551
4
- data.tar.gz: c3ca5dd490b7d08ee3254c7c8a680af0675f72e5356ad97b55dd1ec67e27251d
3
+ metadata.gz: e2ea23b9f86dd37b5f5f3d45fb451303827cbdf9414215d8f769da3624184325
4
+ data.tar.gz: 3d976e8b864261af92ba50d466235e4fa529f31d3560d60ec4deba8e724fc872
5
5
  SHA512:
6
- metadata.gz: f545c292aabb802ae8e03cea73bf2334a8ac6dea7da411b8e6ad48e036b00eabac550e5405c11aea175b30a9d65aced4e3601258081e845299ff6e1dbffd353d
7
- data.tar.gz: ae62ac5c0f4218b66fe0206eb0205828c872531d6b68a4b0537fbe4b0a8753ccf604b4d11a11322dc329b275a1428683125c061e6e255f90ff5a076e4afb02ad
6
+ metadata.gz: 1258d24412b8461fe9a94acb9b795a1cd2a25db2d16f924ce6367662478d9e0672532636b5a2ccd809f549ba8ba6ab8f0cbeb6e8a249b1b91161cc4297f31c92
7
+ data.tar.gz: 4d6a977e948f40d05e7786d07656616e9f3a4e4469a59e7b5a8e571b8f6821284989156ca4225e8e7a29cfe640bbaf544248697e14536f7c63946ffc2a34232e
checksums.yaml.gz.sig CHANGED
Binary file
data/History.rdoc CHANGED
@@ -1,3 +1,189 @@
1
+ === 5.25.5 / 2025-03-12
2
+
3
+ * 4 bug fixes:
4
+
5
+ * Bumped minimum ruby to 2.7.
6
+ * Fixed expectation docs for must/wont_pattern_match. (jaredcwhite)
7
+ * Reorder Minitest::Test.ancestors to allow reaching Minitest::Assertions#skipped? (Edouard-chin)
8
+ * Update the ruby and rails compatibility tables. (bquorning)
9
+
10
+ === 5.25.4 / 2024-12-03
11
+
12
+ * 1 bug fix:
13
+
14
+ * Fix for must_verify definition if only requiring minitest/mock (but why?).
15
+
16
+ === 5.25.3 / 2024-12-03
17
+
18
+ * 5 bug fixes:
19
+
20
+ * Fixed assert_mock to fail instead of raise on unmet mock expectations.
21
+ * Fixed assert_mock to take an optional message argument.
22
+ * Fixed formatting of unmet mock expectation messages.
23
+ * Fixed missing must_verify expectation to match assert_mock.
24
+ * minitest/pride: Fixed to use true colors with *-direct terminals (bk2204)
25
+
26
+ === 5.25.2 / 2024-11-21
27
+
28
+ * 4 bug fixes:
29
+
30
+ * Include class name in spec name. (thomasmarshall)
31
+ * Fixed 'redefining object_id' warning from ruby 3.4. (mattbrictson)
32
+ * Minitest top-level namespace no longer includes entire contents of README.rdoc. Too much!
33
+ * Refactored spec's describe to more cleanly determine the superclass and name
34
+
35
+ === 5.25.1 / 2024-08-16
36
+
37
+ * 2 bug fixes:
38
+
39
+ * Fix incompatibility caused by minitest-hooks & rails invading minitest internals.
40
+ * Revert change from =~ to match? to allow for nil if $TERM undefined.
41
+
42
+ === 5.25.0 / 2024-08-13
43
+
44
+ * 2 minor enhancements:
45
+
46
+ * Fixed some inefficiencies filtering and matching (mostly backtraces).
47
+ * Refactored siginfo handler to reduce runtime costs. Saved ~30%!
48
+
49
+ * 5 bug fixes:
50
+
51
+ * Added missing rdoc to get back to 100% coverage.
52
+ * Cleaning up ancient code checking for defined?(Encoding) and the like.
53
+ * Disambiguated some shadowed variables in minitest/compress.
54
+ * Fixed an ironic bug if using string-literals AND Werror.
55
+ * Improve description of test:slow task. (stomar)
56
+
57
+ === 5.24.1 / 2024-06-29
58
+
59
+ * 1 bug fix:
60
+
61
+ * Fix the error message when an extension is invalid value. (y-yagi)
62
+
63
+ === 5.24.0 / 2024-06-18
64
+
65
+ * 2 minor enhancements:
66
+
67
+ * Added Minitest.register_plugin.
68
+ * Extended plugin system to work with modules/classes for opt-out plugins.
69
+
70
+ * 1 bug fix:
71
+
72
+ * Removed anacronism, but allow load_plugins to exit gracefully if --disable=gems.
73
+
74
+ === 5.23.1 / 2024-05-21
75
+
76
+ * 1 bug fix:
77
+
78
+ * Fully qualify the Queue class to avoid conflicts with other libraries. (rafaelfranca)
79
+
80
+ === 5.23.0 / 2024-05-15
81
+
82
+ * 3 minor enhancements:
83
+
84
+ * Added -Werror to raise on any warning output. (byroot)
85
+ * Added UnexpectedWarning as a failure summary type, added count to output if activated.
86
+ * Added minitest/manual_plugins.rb w/ new Minitest.load method. (tenderlove)
87
+
88
+ * 2 bug fixes:
89
+
90
+ * Allow empty_run! and reporter to display summary for empty runs. (zzak)
91
+ * Make test task verbose using either rake's -v or -t (was just -t).
92
+
93
+ === 5.22.3 / 2024-03-13
94
+
95
+ * 1 minor enhancement:
96
+
97
+ * MASSIVE improvement of minitest's pride plugin output: Frequencies doubled! Sine waves shifted!! Comments improved!!! Colors rotated!!!! (havenwood)
98
+
99
+ * 3 bug fixes:
100
+
101
+ * Improved wording on Minitest::Test#parallelize_me! to clarify it goes INSIDE your test class/describe.
102
+ * Minor changes to tests to pass when tests ran with extra flags (eg -p).
103
+ * Support Ruby 3.4's new error message format. (mame)
104
+
105
+ === 5.22.2 / 2024-02-07
106
+
107
+ * 1 bug fix:
108
+
109
+ * Third time's a charm? Remember: 'ensure' is almost always the
110
+ wrong way to go (for results... it's great for cleaning up).
111
+
112
+ === 5.22.1 / 2024-02-06
113
+
114
+ * 1 bug fix:
115
+
116
+ * Don't exit non-zero if no tests ran and no filter (aka, the test file is empty).
117
+ (I'm starting to think the exit 1 thing for @tenderlove was a mistake...)
118
+
119
+ === 5.22.0 / 2024-02-05
120
+
121
+ * 1 minor enhancement:
122
+
123
+ * Added "did you mean" output if your --name filter matches nothing. (tenderlove)
124
+
125
+ * 2 bug fixes:
126
+
127
+ * Big cleanup of test filtering. Much prettier / more functional.
128
+ * Fix situation where Assertion#location can't find the location. (pftg)
129
+
130
+ === 5.21.2 / 2024-01-17
131
+
132
+ * 1 bug fix:
133
+
134
+ * Fixed bug in Minitest::Compress#compress formatting w/ nested patterns. Now recurses properly.
135
+
136
+ === 5.21.1 / 2024-01-11
137
+
138
+ * 1 bug fix:
139
+
140
+ * Rails' default backtrace filter can't currently work with caller_locations, so reverting back to caller.
141
+
142
+ === 5.21.0 / 2024-01-11
143
+
144
+ * 10 minor enhancements:
145
+
146
+ * Add include_all kw arg to assert_respond_to and refute_respond_to.
147
+ * Added --quiet flag to skip ProgressReporter (prints the dots). Minor speedup.
148
+ * Added Minitest::Compress#compress and added it to UnexpectedError.
149
+ * Added ability to initialize BacktraceFilter w/ custom regexp.
150
+ * Filter failure backtraces using backtrace_filter before calculating location. (thomasmarshall)
151
+ * Make BacktraceFilter#filter compatible with locations (still compares strings).
152
+ * Optimized Assertion#location ~30%.
153
+ * Output relative paths for all failures/errors/backtraces.
154
+ * Refactored location information in assertions, now using locations.
155
+ * Removed thread and mutex_m dependencies. (hsbt, eregon)
156
+
157
+ * 2 bug fixes:
158
+
159
+ * Drop undocumented bt arg in #skip. Dunno why that ever happened, prolly for testing?
160
+ * Fix mock to work with ruby debugger enabled. (keithlayne)
161
+
162
+ === 5.20.0 / 2023-09-06
163
+
164
+ * 1 minor enhancement:
165
+
166
+ * Optionally allow autorun exit hook to remain active in forked child. (casperisfine)
167
+
168
+ === 5.19.0 / 2023-07-26
169
+
170
+ * 2 minor enhancements:
171
+
172
+ * Add metadata lazy accessor to Runnable / Result. (matteeyah)
173
+ * Only load minitest/unit (aka ancient MiniTest compatibility layer) if \ENV[\"MT_COMPAT\"]
174
+
175
+ * 1 bug fix:
176
+
177
+ * Minitest::TestTask enthusiastically added itself to default. (ParadoxV5)
178
+
179
+ === 5.18.1 / 2023-06-16
180
+
181
+ * 3 bug fixes:
182
+
183
+ * Avoid extra string allocations when filtering tests. (tenderlove)
184
+ * Only mention deprecated \ENV[\'N\'] if it is an integer string.
185
+ * Push up test_order to Minitest::Runnable to fix minitest/hell. (koic)
186
+
1
187
  === 5.18.0 / 2023-03-04
2
188
 
3
189
  * 2 major enhancements:
@@ -189,7 +375,7 @@
189
375
 
190
376
  * 3 bug fixes:
191
377
 
192
- * Check `option[:filter]` klass before match. Fixes 2.6 warning. (y-yagi)
378
+ * Check \option[:filter] klass before match. Fixes 2.6 warning. (y-yagi)
193
379
  * Fixed Assertions#diff from recalculating if set to nil
194
380
  * Fixed spec section of readme to not use deprecated global expectations. (CheezItMan)
195
381
 
data/Manifest.txt CHANGED
@@ -9,8 +9,11 @@ lib/minitest.rb
9
9
  lib/minitest/assertions.rb
10
10
  lib/minitest/autorun.rb
11
11
  lib/minitest/benchmark.rb
12
+ lib/minitest/compress.rb
13
+ lib/minitest/error_on_warning.rb
12
14
  lib/minitest/expectations.rb
13
15
  lib/minitest/hell.rb
16
+ lib/minitest/manual_plugins.rb
14
17
  lib/minitest/mock.rb
15
18
  lib/minitest/parallel.rb
16
19
  lib/minitest/pride.rb
data/README.rdoc CHANGED
@@ -1,8 +1,9 @@
1
1
  = minitest/{test,spec,mock,benchmark}
2
2
 
3
- home :: https://github.com/seattlerb/minitest
4
- bugs :: https://github.com/seattlerb/minitest/issues
3
+ home :: https://github.com/minitest/minitest
4
+ bugs :: https://github.com/minitest/minitest/issues
5
5
  rdoc :: https://docs.seattlerb.org/minitest
6
+ clog :: https://github.com/minitest/minitest/blob/master/History.rdoc
6
7
  vim :: https://github.com/sunaku/vim-ruby-minitest
7
8
  emacs:: https://github.com/arthurnn/minitest-emacs
8
9
 
@@ -405,37 +406,47 @@ Using our example above, here is how we might implement MyCI:
405
406
 
406
407
  === What versions are compatible with what? Or what versions are supported?
407
408
 
408
- Minitest is a dependency of rails, which until fairly recently had an
409
+ Minitest is a dependency of rails, which until very recently had an
409
410
  overzealous backwards compatibility policy. As such, I'm stuck
410
411
  supporting versions of ruby that are long past EOL. Hopefully I'll be
411
412
  able to support only current versions of ruby sometime in the near
412
413
  future.
413
414
 
414
- (As of 2022-11-29)
415
+ NOTICE: At this point, I will only locally test/dev against the
416
+ currently 3 supported (non-EOL) versions of ruby. I cannot and will
417
+ not maintain that many builds.
418
+
419
+ (As of 2025-02-03)
415
420
 
416
421
  Current versions of rails: (https://endoflife.date/rails)
417
422
 
418
- | rails | min ruby | rec ruby | minitest | status | EOL Date |
419
- |-------+----------+----------+----------+----------+------------|
420
- | 7.0 | >= 2.7 | 3.1 | >= 5.1 | Current | 2025-06-01?|
421
- | 6.1 | >= 2.5 | 3.0 | >= 5.1 | Maint | 2024-06-01?|
422
- | 6.0 | >= 2.5 | 2.6 | >= 5.1 | Security | 2023-06-01 |
423
- | 5.2 | >= 2.2.2 | 2.5 | ~> 5.1 | EOL | 2022-06-01 |
423
+ | rails | min ruby | minitest | status | EOL Date |
424
+ |-------+----------+----------+----------+------------|
425
+ | 8.0 | >= 3.2 | >= 5.1 | Current | 2026-11-07 |
426
+ | 7.2 | >= 3.1 | >= 5.1 | Current | 2026-08-09 |
427
+ | 7.1 | >= 2.7 | >= 5.1 | Security | 2025-10-01 |
428
+ | 7.0 | >= 2.7 | >= 5.1 | Security | 2025-04-01 |
429
+ | 6.1 | >= 2.5 | >= 5.1 | EOL | 2024-10-01 |
430
+ | 6.0 | >= 2.5 | >= 5.1 | EOL | 2023-06-01 |
431
+ | 5.2 | >= 2.2.2 | ~> 5.1 | EOL | 2022-06-01 |
432
+
433
+ If you want to look at the requirements for a specific version, run:
434
+
435
+ gem spec -r --ruby rails -v 8.0.0
424
436
 
425
437
  Current versions of ruby: (https://endoflife.date/ruby)
426
438
 
427
439
  | ruby | Status | EOL Date |
428
440
  |------+---------+------------|
429
- | 3.1 | Current | 2025-12-25 |
430
- | 3.0 | Maint | 2024-03-31 |
431
- | 2.7 | Maint* | 2023-03-31 |
441
+ | 3.4 | Current | 2028-03-31 |
442
+ | 3.3 | Maint | 2027-03-31 |
443
+ | 3.2 | Security| 2026-03-31 |
444
+ | 3.1 | EOL | 2025-03-31 |
445
+ | 3.0 | EOL | 2024-03-31 |
446
+ | 2.7 | EOL | 2023-03-31 |
432
447
  | 2.6 | EOL | 2022-03-31 |
433
448
  | 2.5 | EOL | 2021-03-31 |
434
449
 
435
- See also:
436
-
437
- * https://www.fastruby.io/blog/ruby/rails/versions/compatibility-table.html
438
-
439
450
  === How to test SimpleDelegates?
440
451
 
441
452
  The following implementation and test:
data/Rakefile CHANGED
@@ -12,7 +12,7 @@ Hoe.spec "minitest" do
12
12
 
13
13
  license "MIT"
14
14
 
15
- require_ruby_version [">= 2.6", "< 4.0"]
15
+ require_ruby_version [">= 2.7", "< 4.0"]
16
16
  end
17
17
 
18
18
  desc "Find missing expectations"
@@ -33,6 +33,7 @@ task :specs do
33
33
  /_includes/ => "_include",
34
34
  /(must|wont)_(.*_of|nil|silent|empty)/ => '\1_be_\2',
35
35
  /must_raises/ => "must_raise",
36
+ /(must|wont)_pattern/ => '\1_pattern_match',
36
37
  /(must|wont)_predicate/ => '\1_be',
37
38
  /(must|wont)_path_exists/ => 'path_\1_exist',
38
39
  }
@@ -72,4 +73,9 @@ task :bugs do
72
73
  sh "for f in bug*.rb ; do echo $f; echo; #{Gem.ruby} -Ilib $f && rm $f ; done"
73
74
  end
74
75
 
76
+ Minitest::TestTask.create :testW0 do |t|
77
+ t.warning = false
78
+ t.test_prelude = "$-w = nil"
79
+ end
80
+
75
81
  # vim: syntax=Ruby
data/lib/hoe/minitest.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # :stopdoc:
2
2
 
3
3
  class Hoe
4
+ # empty
4
5
  end
5
6
 
6
7
  module Hoe::Minitest
@@ -16,7 +17,7 @@ module Hoe::Minitest
16
17
 
17
18
  gem "minitest"
18
19
  require "minitest"
19
- version = Minitest::VERSION.split(/\./).first(2).join(".")
20
+ version = Minitest::VERSION.split(".").first(2).join "."
20
21
 
21
22
  dependency "minitest", "~> #{version}", :development unless
22
23
  minitest? or ENV["MT_NO_ISOLATE"]