minitest 5.16.3 → 5.25.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: 9c5a4db9f495b34c86f2c39eef6b6d424b22d8d9e6a86038bf0ff84c1c20c975
4
- data.tar.gz: b8a1b6cb226d14c6972460bec05ec610d05acdfa0edcffe19bf51e8220486206
3
+ metadata.gz: 791576b6d19fd427617c1e5c02a7ddf55f3d214e75bdeeda4ec5ccb49bbad5d2
4
+ data.tar.gz: 95a6dccbd1cc86bf047b82e88725d50d0dd03dab9f1f6db0a02aad13f1398f10
5
5
  SHA512:
6
- metadata.gz: 6505a8f386da89263a005ba8eef3f81053e7e666a54ec03abd8f71e06c290ebf318df4f7728e420e3f40fab55ffe1a57824ec435286c89864ea830d330d6b028
7
- data.tar.gz: 5b8bbba7d8565026e64da1d3af31a5aa342c3d063acd75de9661bc09fb142f4a469e9febf44daf2764d4fb33021d993a27bd936200efded501158b23c299989e
6
+ metadata.gz: acde5c1dc093da1b6749b4e328fe5e0b86ba34c081b3d6e667165f8811ea3565774570e73216d67f8c337b5e3999193b2709a50bd69e0dc62ed211b86d087cb9
7
+ data.tar.gz: ee2390a10ef3ce15c17fef8d8387ff38509ac7c5bf9fd0bcbb1b6c160592821b268d713c0dc8c7357ddeaefb8ca08d0a04d96501c064e0c4f4781f7b3612bbb8
checksums.yaml.gz.sig CHANGED
Binary file
data/History.rdoc CHANGED
@@ -1,3 +1,178 @@
1
+ === 5.25.1 / 2024-08-16
2
+
3
+ * 2 bug fixes:
4
+
5
+ * Fix incompatibility caused by minitest-hooks & rails invading minitest internals.
6
+ * Revert change from =~ to match? to allow for nil if $TERM undefined.
7
+
8
+ === 5.25.0 / 2024-08-13
9
+
10
+ * 2 minor enhancements:
11
+
12
+ * Fixed some inefficiencies filtering and matching (mostly backtraces).
13
+ * Refactored siginfo handler to reduce runtime costs. Saved ~30%!
14
+
15
+ * 5 bug fixes:
16
+
17
+ * Added missing rdoc to get back to 100% coverage.
18
+ * Cleaning up ancient code checking for defined?(Encoding) and the like.
19
+ * Disambiguated some shadowed variables in minitest/compress.
20
+ * Fixed an ironic bug if using string-literals AND Werror.
21
+ * Improve description of test:slow task. (stomar)
22
+
23
+ === 5.24.1 / 2024-06-29
24
+
25
+ * 1 bug fix:
26
+
27
+ * Fix the error message when an extension is invalid value. (y-yagi)
28
+
29
+ === 5.24.0 / 2024-06-18
30
+
31
+ * 2 minor enhancements:
32
+
33
+ * Added Minitest.register_plugin.
34
+ * Extended plugin system to work with modules/classes for opt-out plugins.
35
+
36
+ * 1 bug fix:
37
+
38
+ * Removed anacronism, but allow load_plugins to exit gracefully if --disable=gems.
39
+
40
+ === 5.23.1 / 2024-05-21
41
+
42
+ * 1 bug fix:
43
+
44
+ * Fully qualify the Queue class to avoid conflicts with other libraries. (rafaelfranca)
45
+
46
+ === 5.23.0 / 2024-05-15
47
+
48
+ * 3 minor enhancements:
49
+
50
+ * Added -Werror to raise on any warning output. (byroot)
51
+ * Added UnexpectedWarning as a failure summary type, added count to output if activated.
52
+ * Added minitest/manual_plugins.rb w/ new Minitest.load method. (tenderlove)
53
+
54
+ * 2 bug fixes:
55
+
56
+ * Allow empty_run! and reporter to display summary for empty runs. (zzak)
57
+ * Make test task verbose using either rake's -v or -t (was just -t).
58
+
59
+ === 5.22.3 / 2024-03-13
60
+
61
+ * 1 minor enhancement:
62
+
63
+ * MASSIVE improvement of minitest's pride plugin output: Frequencies doubled! Sine waves shifted!! Comments improved!!! Colors rotated!!!! (havenwood)
64
+
65
+ * 3 bug fixes:
66
+
67
+ * Improved wording on Minitest::Test#parallelize_me! to clarify it goes INSIDE your test class/describe.
68
+ * Minor changes to tests to pass when tests ran with extra flags (eg -p).
69
+ * Support Ruby 3.4's new error message format. (mame)
70
+
71
+ === 5.22.2 / 2024-02-07
72
+
73
+ * 1 bug fix:
74
+
75
+ * Third time's a charm? Remember: 'ensure' is almost always the
76
+ wrong way to go (for results... it's great for cleaning up).
77
+
78
+ === 5.22.1 / 2024-02-06
79
+
80
+ * 1 bug fix:
81
+
82
+ * Don't exit non-zero if no tests ran and no filter (aka, the test file is empty).
83
+ (I'm starting to think the exit 1 thing for @tenderlove was a mistake...)
84
+
85
+ === 5.22.0 / 2024-02-05
86
+
87
+ * 1 minor enhancement:
88
+
89
+ * Added "did you mean" output if your --name filter matches nothing. (tenderlove)
90
+
91
+ * 2 bug fixes:
92
+
93
+ * Big cleanup of test filtering. Much prettier / more functional.
94
+ * Fix situation where Assertion#location can't find the location. (pftg)
95
+
96
+ === 5.21.2 / 2024-01-17
97
+
98
+ * 1 bug fix:
99
+
100
+ * Fixed bug in Minitest::Compress#compress formatting w/ nested patterns. Now recurses properly.
101
+
102
+ === 5.21.1 / 2024-01-11
103
+
104
+ * 1 bug fix:
105
+
106
+ * Rails' default backtrace filter can't currently work with caller_locations, so reverting back to caller.
107
+
108
+ === 5.21.0 / 2024-01-11
109
+
110
+ * 10 minor enhancements:
111
+
112
+ * Add include_all kw arg to assert_respond_to and refute_respond_to.
113
+ * Added --quiet flag to skip ProgressReporter (prints the dots). Minor speedup.
114
+ * Added Minitest::Compress#compress and added it to UnexpectedError.
115
+ * Added ability to initialize BacktraceFilter w/ custom regexp.
116
+ * Filter failure backtraces using backtrace_filter before calculating location. (thomasmarshall)
117
+ * Make BacktraceFilter#filter compatible with locations (still compares strings).
118
+ * Optimized Assertion#location ~30%.
119
+ * Output relative paths for all failures/errors/backtraces.
120
+ * Refactored location information in assertions, now using locations.
121
+ * Removed thread and mutex_m dependencies. (hsbt, eregon)
122
+
123
+ * 2 bug fixes:
124
+
125
+ * Drop undocumented bt arg in #skip. Dunno why that ever happened, prolly for testing?
126
+ * Fix mock to work with ruby debugger enabled. (keithlayne)
127
+
128
+ === 5.20.0 / 2023-09-06
129
+
130
+ * 1 minor enhancement:
131
+
132
+ * Optionally allow autorun exit hook to remain active in forked child. (casperisfine)
133
+
134
+ === 5.19.0 / 2023-07-26
135
+
136
+ * 2 minor enhancements:
137
+
138
+ * Add metadata lazy accessor to Runnable / Result. (matteeyah)
139
+ * Only load minitest/unit (aka ancient MiniTest compatibility layer) if \ENV[\"MT_COMPAT\"]
140
+
141
+ * 1 bug fix:
142
+
143
+ * Minitest::TestTask enthusiastically added itself to default. (ParadoxV5)
144
+
145
+ === 5.18.1 / 2023-06-16
146
+
147
+ * 3 bug fixes:
148
+
149
+ * Avoid extra string allocations when filtering tests. (tenderlove)
150
+ * Only mention deprecated \ENV[\'N\'] if it is an integer string.
151
+ * Push up test_order to Minitest::Runnable to fix minitest/hell. (koic)
152
+
153
+ === 5.18.0 / 2023-03-04
154
+
155
+ * 2 major enhancements:
156
+
157
+ * Added assert_pattern & refute_pattern for pattern matching. (flavorjones)
158
+ * Added matching must_pattern_match & wont_pattern_match to minitest/spec.
159
+
160
+ * 1 bug fix:
161
+
162
+ * Support the new message format of NameError in Ruby 3.3 (mame)
163
+
164
+ === 5.17.0 / 2022-12-31
165
+
166
+ * 1 minor enhancement:
167
+
168
+ * Refactor setup hooks into a SETUP_METHODS constant. (MSP-Greg)
169
+
170
+ * 3 bug fixes:
171
+
172
+ * Fix kwargs for Mock calls to delegator. (blowmage)
173
+ * Fix kwargs for expectations. (bobmazanec, blowmage)
174
+ * Remove check for .b method. (tenderlove)
175
+
1
176
  === 5.16.3 / 2022-08-17
2
177
 
3
178
  * 2 bug fixes:
@@ -166,7 +341,7 @@
166
341
 
167
342
  * 3 bug fixes:
168
343
 
169
- * Check `option[:filter]` klass before match. Fixes 2.6 warning. (y-yagi)
344
+ * Check \option[:filter] klass before match. Fixes 2.6 warning. (y-yagi)
170
345
  * Fixed Assertions#diff from recalculating if set to nil
171
346
  * Fixed spec section of readme to not use deprecated global expectations. (CheezItMan)
172
347
 
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,39 +406,39 @@ 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
- supporting versions of ruby that are long past EOL. Once rails 5.2 is
411
- dropped (hopefully April 2021), I get to drop a bunch of versions of
412
- ruby that I have to currently test against.
411
+ supporting versions of ruby that are long past EOL. Hopefully I'll be
412
+ able to support only current versions of ruby sometime in the near
413
+ future.
413
414
 
414
- (As of 2021-01-31)
415
+ (As of 2024-05-10)
415
416
 
416
417
  Current versions of rails: (https://endoflife.date/rails)
417
418
 
418
- | rails | min ruby | rec ruby | minitest | status |
419
- |-------+----------+----------+----------+----------|
420
- | 7.0 | >= 2.7 | 3.0 | >= 5.1 | Future |
421
- | 6.1 | >= 2.5 | 3.0 | >= 5.1 | Current |
422
- | 6.0 | >= 2.5 | 2.6 | >= 5.1 | Security |
423
- | 5.2 | >= 2.2.2 | 2.5 | ~> 5.1 | Security | EOL @railsconf 2021?
419
+ | rails | min ruby | minitest | status | EOL Date |
420
+ |-------+----------+----------+----------+------------|
421
+ | 7.1 | >= 2.7 | >= 5.1 | Current | 2026-06-01?|
422
+ | 7.0 | >= 2.7 | >= 5.1 | Maint | 2025-06-01?|
423
+ | 6.1 | >= 2.5 | >= 5.1 | Security | 2024-06-01?|
424
+ | 6.0 | >= 2.5 | >= 5.1 | EOL | 2023-06-01 |
425
+ | 5.2 | >= 2.2.2 | ~> 5.1 | EOL | 2022-06-01 |
426
+
427
+ If you want to look at the requirements for a specific version, run:
428
+
429
+ gem spec -r --ruby rails -v 7.0.0
424
430
 
425
431
  Current versions of ruby: (https://endoflife.date/ruby)
426
432
 
427
433
  | ruby | Status | EOL Date |
428
434
  |------+---------+------------|
429
- | 3.0 | Current | 2024-03-31 |
430
- | 2.7 | Maint | 2023-03-31 |
431
- | 2.6 | Maint* | 2022-03-31 |
432
- | 2.5 | EOL | 2021-03-31 |
433
- | 2.4 | EOL | 2020-03-31 |
434
- | 2.3 | EOL | 2019-03-31 |
435
- | 2.2 | EOL | 2018-03-31 |
436
-
437
- See also:
438
-
439
- * https://www.fastruby.io/blog/ruby/rails/versions/compatibility-table.html
440
- * https://jamesjeffersconsulting.com/ruby-rails-version-matrix/
435
+ | 3.3 | Current | 2027-03-31 |
436
+ | 3.2 | Maint | 2026-03-31 |
437
+ | 3.1 | Security| 2025-03-31 |
438
+ | 3.0 | EOL | 2024-03-31 |
439
+ | 2.7 | EOL | 2023-03-31 |
440
+ | 2.6 | EOL | 2022-03-31 |
441
+ | 2.5 | EOL | 2021-03-31 | DO YOU SEE WHAT I'M STUCK WITH???
441
442
 
442
443
  === How to test SimpleDelegates?
443
444
 
data/Rakefile CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  require "rubygems"
4
4
  require "hoe"
5
+ $:.unshift "lib" # to pick up lib/minitest/test_task.rb when minitest not installed
5
6
 
6
7
  Hoe.plugin :seattlerb
7
8
  Hoe.plugin :rdoc
@@ -32,6 +33,7 @@ task :specs do
32
33
  /_includes/ => "_include",
33
34
  /(must|wont)_(.*_of|nil|silent|empty)/ => '\1_be_\2',
34
35
  /must_raises/ => "must_raise",
36
+ /(must|wont)_pattern/ => '\1_pattern_match',
35
37
  /(must|wont)_predicate/ => '\1_be',
36
38
  /(must|wont)_path_exists/ => 'path_\1_exist',
37
39
  }
@@ -71,4 +73,9 @@ task :bugs do
71
73
  sh "for f in bug*.rb ; do echo $f; echo; #{Gem.ruby} -Ilib $f && rm $f ; done"
72
74
  end
73
75
 
76
+ Minitest::TestTask.create :testW0 do |t|
77
+ t.warning = false
78
+ t.test_prelude = "$-w = nil"
79
+ end
80
+
74
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"]