minitest 5.16.2 → 6.0.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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/History.rdoc +373 -1
  4. data/Manifest.txt +16 -4
  5. data/README.rdoc +48 -118
  6. data/Rakefile +17 -2
  7. data/bin/minitest +5 -0
  8. data/design_rationale.rb +21 -19
  9. data/lib/hoe/minitest.rb +4 -2
  10. data/lib/minitest/assertions.rb +142 -124
  11. data/lib/minitest/autorun.rb +3 -11
  12. data/lib/minitest/benchmark.rb +9 -12
  13. data/lib/minitest/bisect.rb +304 -0
  14. data/lib/minitest/complete.rb +56 -0
  15. data/lib/minitest/compress.rb +94 -0
  16. data/lib/minitest/error_on_warning.rb +11 -0
  17. data/lib/minitest/expectations.rb +18 -0
  18. data/lib/minitest/find_minimal_combination.rb +127 -0
  19. data/lib/minitest/hell.rb +1 -1
  20. data/lib/minitest/manual_plugins.rb +4 -0
  21. data/lib/minitest/parallel.rb +10 -8
  22. data/lib/minitest/path_expander.rb +432 -0
  23. data/lib/minitest/pride.rb +2 -2
  24. data/lib/minitest/pride_plugin.rb +17 -24
  25. data/lib/minitest/server.rb +49 -0
  26. data/lib/minitest/server_plugin.rb +88 -0
  27. data/lib/minitest/spec.rb +27 -46
  28. data/lib/minitest/sprint.rb +105 -0
  29. data/lib/minitest/sprint_plugin.rb +39 -0
  30. data/lib/minitest/test.rb +32 -52
  31. data/lib/minitest/test_task.rb +68 -42
  32. data/lib/minitest.rb +361 -215
  33. data/test/minitest/metametameta.rb +33 -19
  34. data/test/minitest/test_bisect.rb +249 -0
  35. data/test/minitest/test_find_minimal_combination.rb +138 -0
  36. data/test/minitest/test_minitest_assertions.rb +311 -173
  37. data/test/minitest/test_minitest_benchmark.rb +15 -1
  38. data/test/minitest/test_minitest_reporter.rb +148 -23
  39. data/test/minitest/test_minitest_spec.rb +157 -132
  40. data/test/minitest/test_minitest_test.rb +270 -204
  41. data/test/minitest/test_minitest_test_task.rb +18 -7
  42. data/test/minitest/test_path_expander.rb +229 -0
  43. data/test/minitest/test_server.rb +146 -0
  44. data.tar.gz.sig +2 -2
  45. metadata +97 -37
  46. metadata.gz.sig +0 -0
  47. data/.autotest +0 -34
  48. data/lib/minitest/mock.rb +0 -323
  49. data/lib/minitest/unit.rb +0 -42
  50. data/test/minitest/test_minitest_mock.rb +0 -1139
@@ -1,5 +1,11 @@
1
1
  require "minitest/autorun"
2
- require "hoe"
2
+
3
+ begin
4
+ require "hoe"
5
+ rescue LoadError => e
6
+ warn e.message
7
+ return
8
+ end
3
9
 
4
10
  require "minitest/test_task"
5
11
 
@@ -8,11 +14,16 @@ Hoe.load_plugins # make sure Hoe::Test is loaded
8
14
  class TestHoeTest < Minitest::Test
9
15
  PATH = "test/minitest/test_minitest_test_task.rb"
10
16
 
11
- mt_path = %w[lib test .].join File::PATH_SEPARATOR
17
+ def util_cmd_string *prelude_framework
18
+ mt_path = %w[lib test .].join File::PATH_SEPARATOR
19
+ mt_expected = "-I%s -w -e '%srequire %p' -- "
12
20
 
13
- MT_EXPECTED = %W[-I#{mt_path} -w
14
- -e '%srequire "#{PATH}"'
15
- --].join(" ") + " "
21
+ mt_expected % [mt_path, prelude_framework.join("; "), PATH]
22
+ end
23
+
24
+ def util_exp_cmd
25
+ @tester.make_test_cmd.sub(/ -- .+/, " -- ")
26
+ end
16
27
 
17
28
  def test_make_test_cmd_for_minitest
18
29
  skip "Using TESTOPTS... skipping" if ENV["TESTOPTS"]
@@ -25,7 +36,7 @@ class TestHoeTest < Minitest::Test
25
36
  t.test_globs = [PATH]
26
37
  end
27
38
 
28
- assert_equal MT_EXPECTED % [framework].join("; "), @tester.make_test_cmd
39
+ assert_equal util_cmd_string(framework), util_exp_cmd
29
40
  end
30
41
 
31
42
  def test_make_test_cmd_for_minitest_prelude
@@ -41,6 +52,6 @@ class TestHoeTest < Minitest::Test
41
52
  t.test_globs = [PATH]
42
53
  end
43
54
 
44
- assert_equal MT_EXPECTED % [prelude, framework].join("; "), @tester.make_test_cmd
55
+ assert_equal util_cmd_string(prelude, framework), util_exp_cmd
45
56
  end
46
57
  end
@@ -0,0 +1,229 @@
1
+ require "minitest/autorun"
2
+ require "minitest/path_expander"
3
+
4
+ class TestPathExpander < Minitest::Test
5
+ attr_accessor :args
6
+ attr_accessor :expander
7
+
8
+ MT_VPE = Minitest::VendoredPathExpander
9
+
10
+ def setup
11
+ super
12
+
13
+ self.args = []
14
+
15
+ self.expander = MT_VPE.new args, "*.rb"
16
+
17
+ @pe_tmp_path = "test/pe_tmp"
18
+ @pe_tst_path = "test/pe_tmp/test"
19
+
20
+ @orig_pwd = Dir.pwd
21
+ FileUtils.mkdir_p @pe_tst_path
22
+ FileUtils.touch ["#{@pe_tst_path}/test_path_expander.rb", "#{@pe_tst_path}/test_bad.rb"]
23
+ Dir.chdir @pe_tmp_path
24
+ end
25
+
26
+ def teardown
27
+ super
28
+
29
+ Dir.chdir @orig_pwd
30
+
31
+ FileUtils.rm_rf @pe_tmp_path
32
+ end
33
+
34
+ def assert_filter_files exp, filter, files = %w[test/dog_and_cat.rb]
35
+ ignore = StringIO.new filter
36
+ act = expander.filter_files files, ignore
37
+ assert_equal exp, act
38
+ end
39
+
40
+ def assert_filter_files_absolute_paths exp, filter, files = [File.join(Dir.pwd, 'test/dog_and_cat.rb')]
41
+ assert_filter_files exp, filter, files
42
+ end
43
+
44
+ def assert_process_args exp_files, exp_args, *args
45
+ expander.args.concat args
46
+
47
+ assert_equal [exp_files.sort, exp_args], expander.process_args
48
+ end
49
+
50
+ def test_expand_dirs_to_files
51
+ exp = %w[test/test_bad.rb test/test_path_expander.rb]
52
+
53
+ assert_equal exp, expander.expand_dirs_to_files("test")
54
+ assert_equal %w[Rakefile], expander.expand_dirs_to_files("Rakefile")
55
+ end
56
+
57
+ def test_expand_dirs_to_files__sorting
58
+ exp = %w[test/test_bad.rb test/test_path_expander.rb]
59
+ input = %w[test/test_path_expander.rb test/test_bad.rb]
60
+
61
+ assert_equal exp, expander.expand_dirs_to_files(*input)
62
+ assert_equal %w[Rakefile], expander.expand_dirs_to_files("Rakefile")
63
+ end
64
+
65
+ def test_expand_dirs_to_files__leading_dot
66
+ exp = %w[test/test_bad.rb test/test_path_expander.rb]
67
+
68
+ assert_equal exp, expander.expand_dirs_to_files("./test")
69
+ end
70
+
71
+ def test_filter_files_dir
72
+ assert_filter_files [], "test/"
73
+ assert_filter_files_absolute_paths [], "test/"
74
+ end
75
+
76
+ def test_filter_files_files
77
+ example = %w[test/file.rb test/sub/file.rb top/test/perf.rb]
78
+ example_absolute_paths = example.map { |e| File.join(Dir.pwd, e) }
79
+
80
+ assert_filter_files [], "test/*.rb"
81
+
82
+ assert_filter_files example[1..-1], "test/*.rb", example
83
+
84
+ assert_filter_files_absolute_paths [], "test/*.rb"
85
+
86
+ assert_filter_files_absolute_paths example_absolute_paths[1..-1], "test/*.rb", example_absolute_paths
87
+ end
88
+
89
+ def test_filter_files_glob
90
+ assert_filter_files [], "test*"
91
+ assert_filter_files [], "test*", ["test/lib/woot.rb"]
92
+ assert_filter_files [], "*.rb"
93
+ assert_filter_files [], "*dog*.rb"
94
+
95
+ assert_filter_files_absolute_paths [], "test*"
96
+ assert_filter_files_absolute_paths [], "test*", [File.join(Dir.pwd, "test/lib/woot.rb")]
97
+ assert_filter_files_absolute_paths [], "*.rb"
98
+ assert_filter_files_absolute_paths [], "*dog*.rb"
99
+ end
100
+
101
+ def test_filter_files_glob_miss
102
+ miss = %w[test/dog_and_cat.rb]
103
+ miss_absolute = [File.join(Dir.pwd, 'test/dog_and_cat.rb')]
104
+
105
+ assert_filter_files miss, "test"
106
+ assert_filter_files miss, "nope"
107
+
108
+ assert_filter_files_absolute_paths miss_absolute, "test"
109
+ assert_filter_files_absolute_paths miss_absolute, "nope"
110
+ end
111
+
112
+ def test_filter_files__ignore_file
113
+ files = expander.expand_dirs_to_files "test"
114
+
115
+ File.write ".mtignore", "test/*.rb"
116
+
117
+ act = expander.filter_files files, ".mtignore"
118
+
119
+ assert_equal [], act
120
+ end
121
+
122
+ def test_process
123
+ self.args.concat %w[test --seed 42]
124
+
125
+ act = expander.process
126
+
127
+ assert_kind_of Enumerator, act
128
+ assert_equal %w[test/test_bad.rb test/test_path_expander.rb], act.to_a
129
+ assert_equal %w[--seed 42], expander.args
130
+ assert_equal %w[--seed 42], args # affected our original array (eg, ARGV)
131
+ end
132
+
133
+ def test_process__block
134
+ self.args.concat %w[test --seed 42]
135
+
136
+ act = []
137
+ result = expander.process { |x| act << x }
138
+
139
+ assert_same expander, result
140
+ assert_equal %w[test/test_bad.rb test/test_path_expander.rb], act.to_a
141
+ assert_equal %w[--seed 42], expander.args
142
+ assert_equal %w[--seed 42], args # affected our original array (eg, ARGV)
143
+ end
144
+
145
+ def with_tempfile *lines
146
+ require "tempfile"
147
+
148
+ Tempfile.open("tmp") do |f|
149
+ f.puts lines
150
+ f.flush
151
+ f.rewind
152
+
153
+ yield f
154
+ end
155
+ end
156
+
157
+ def test_process_args_at
158
+ with_tempfile %w[test -test/test_bad.rb --seed 24] do |f|
159
+ assert_process_args(%w[test/test_path_expander.rb],
160
+ %w[--seed 24],
161
+ "@#{f.path}")
162
+ end
163
+ end
164
+
165
+ def test_process_args_dash_dir
166
+ assert_process_args(%w[],
167
+ %w[],
168
+ "test", "-test")
169
+ end
170
+
171
+ def test_process_args_dash_file
172
+ assert_process_args(%w[test/test_path_expander.rb],
173
+ %w[],
174
+ "test", "-test/test_bad.rb")
175
+
176
+ end
177
+
178
+ def test_process_args_dash_other
179
+ assert_process_args(%w[],
180
+ %w[--verbose],
181
+ "--verbose")
182
+ end
183
+
184
+ def test_process_args_dir
185
+ assert_process_args(%w[test/test_bad.rb test/test_path_expander.rb],
186
+ %w[],
187
+ "test")
188
+ end
189
+
190
+ def test_process_args_file
191
+ assert_process_args(%w[test/test_path_expander.rb],
192
+ %w[],
193
+ "test/test_path_expander.rb")
194
+ end
195
+
196
+ def test_process_args_other
197
+ assert_process_args(%w[],
198
+ %w[42],
199
+ "42")
200
+ end
201
+
202
+ def test_process_args_root
203
+ assert_process_args(%w[],
204
+ %w[-n /./],
205
+ "-n",
206
+ "/./")
207
+ end
208
+
209
+ def test_process_args_no_files
210
+ self.expander = MT_VPE.new args, "*.rb", "test" # extra test default
211
+
212
+ assert_process_args(%w[test/test_bad.rb test/test_path_expander.rb],
213
+ %w[-v],
214
+ "-v")
215
+ end
216
+
217
+ def test_process_args_dash
218
+ assert_process_args(%w[-],
219
+ %w[-v],
220
+ "-", "-v")
221
+ end
222
+
223
+ def test_process_flags
224
+ exp = %w[a b c]
225
+ act = expander.process_flags %w[a b c]
226
+
227
+ assert_equal exp, act
228
+ end
229
+ end
@@ -0,0 +1,146 @@
1
+ require "minitest/autorun"
2
+ require_relative "../../lib/minitest/server"
3
+ require_relative "../../lib/minitest/server_plugin"
4
+
5
+ class BogoTests < Minitest::Test
6
+ def pass_test
7
+ assert true
8
+ end
9
+
10
+ def fail_test
11
+ assert false, "fail"
12
+ end
13
+
14
+ def error_test
15
+ raise "error"
16
+ end
17
+
18
+ def unmarshalable_ivar_test
19
+ raise "error"
20
+ rescue => e
21
+ e.instance_variable_set :@binding, binding
22
+ raise
23
+ end
24
+
25
+ def unmarshalable_class_test
26
+ exc = Class.new RuntimeError
27
+ raise exc, "error"
28
+ rescue => e
29
+ e.instance_variable_set :@binding, binding
30
+ raise
31
+ end
32
+
33
+ def wtf_test
34
+ assert false, "wtf"
35
+ rescue Minitest::Assertion => e
36
+ e.instance_variable_set :@proc, proc { 42 }
37
+ raise e
38
+ end
39
+ end
40
+
41
+ class TestServerReporter < Minitest::ServerReporter
42
+ def record o
43
+ super
44
+
45
+ Marshal.dump o
46
+ end
47
+ end
48
+
49
+ class Client
50
+ def run pid, type
51
+ reporter = TestServerReporter.new pid
52
+
53
+ unless Minitest.respond_to? :run_one_method then # MT6
54
+ BogoTests.run BogoTests, "#{type}_test", reporter
55
+ else
56
+ reporter.start
57
+ reporter.record Minitest.run_one_method(BogoTests, "#{type}_test")
58
+ end
59
+ end
60
+ end
61
+
62
+ class Server
63
+ attr_accessor :results
64
+
65
+ def self.run type = nil
66
+ s = self.new
67
+ s.run type
68
+ s.results
69
+ end
70
+
71
+ def run type = nil
72
+ Minitest::Server.run self
73
+
74
+ Client.new.run $$, type
75
+ ensure
76
+ Minitest::Server.stop
77
+ end
78
+
79
+ def minitest_start
80
+ # do nothing
81
+ end
82
+
83
+ def minitest_result(*vals)
84
+ self.results = vals
85
+ end
86
+ end
87
+
88
+ class ServerTest < Minitest::Test
89
+ def test_pass
90
+ assert_run "pass", [], 1
91
+ end
92
+
93
+ def test_fail
94
+ assert_run "fail", ["fail"], 1
95
+ end
96
+
97
+ FILE = __FILE__.delete_prefix "#{Dir.pwd}/"
98
+
99
+ def test_error
100
+ msg = <<~EOM.chomp
101
+ RuntimeError: error
102
+ #{FILE}:##:in `error_test'
103
+ EOM
104
+
105
+ assert_run "error", [msg], 0
106
+ end
107
+
108
+ def test_error_unmarshalable__ivar
109
+ msg = <<~EOM.chomp
110
+ RuntimeError: error
111
+ #{FILE}:##:in `unmarshalable_ivar_test'
112
+ EOM
113
+
114
+ assert_run "unmarshalable_ivar", [msg], 0
115
+ end
116
+
117
+ def test_error_unmarshalable__class
118
+ msg = <<~EOM.chomp
119
+ RuntimeError: Neutered Exception #<Class:0xXXXXXX>: error
120
+ #{FILE}:##:in `unmarshalable_class_test'
121
+ EOM
122
+
123
+ assert_run "unmarshalable_class", [msg], 0
124
+ end
125
+
126
+ def test_wtf
127
+ assert_run "wtf", ["wtf"], 1
128
+ end
129
+
130
+ def assert_run type, e, n
131
+ e[0] = e[0].sub "`", "'BogoTests#" if RUBY_VERSION > "3.4" if e[0]
132
+
133
+ # client.minitest_result file, klass, method, fails, assertions, time
134
+ f, k, m, (msg,), a, _time = Server.run type
135
+
136
+ msg &&= msg
137
+ .message
138
+ .gsub(/0x\h+/, "0xXXXXXX")
139
+ .gsub(/:\d{2,}/, ":##")
140
+
141
+ act = [f, k, m, [msg].compact, a, 0]
142
+ exp = ["test/minitest/test_server.rb", "BogoTests", "#{type}_test", e, n, 0]
143
+
144
+ assert_equal exp, act
145
+ end
146
+ end
data.tar.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
- mڕaE�O;i�2�6�I�u�cseM6ʑ�l󈟛w� 9���%;�q��?X� ��5��N�sϠnN�՝)��_+���VR���ל�V����r����!1u��;NG'���]|�H��0�T�w��[���-'��'{�7ir���u���U��P6hj
2
- �>� ����pߪ�M�O<��Krz ����!�u���'c{O�Mz�!� ���|@�΄��CՌiv��:u���\�t��Zd:
1
+ )��7cn(���h˛��AŠK��q��SN�;R���1nG
2
+ ���`LA������J��STfn���D59>�� ��i�hٚ�hxGmI+j���F�����ac&E�m4��ja^�P�ƾ�N��t��-��o��V�� zf����;8lـA�=A�n��ܜ}��[��[��%�Qk�3}�#o�Jăæ�,�qa` �5w��UP;[Q٪�7��|KZM�k�8�P�dM
metadata CHANGED
@@ -1,18 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.16.2
4
+ version: 6.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain:
11
10
  - |
12
11
  -----BEGIN CERTIFICATE-----
13
- MIIDPjCCAiagAwIBAgIBBjANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
12
+ MIIDPjCCAiagAwIBAgIBCjANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
14
13
  ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
15
- GRYDY29tMB4XDTIxMTIyMzIzMTkwNFoXDTIyMTIyMzIzMTkwNFowRTETMBEGA1UE
14
+ GRYDY29tMB4XDTI2MDEwNzAxMDkxNFoXDTI3MDEwNzAxMDkxNFowRTETMBEGA1UE
16
15
  AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
17
16
  JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
18
17
  b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
@@ -22,52 +21,94 @@ cert_chain:
22
21
  qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
23
22
  gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
24
23
  HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
25
- AQCKB5jfsuSnKb+t/Wrh3UpdkmX7TrEsjVmERC0pPqzQ5GQJgmEXDD7oMgaKXaAq
26
- x2m+KSZDrqk7c8uho5OX6YMqg4KdxehfSLqqTZGoeV78qwf/jpPQZKTf+W9gUSJh
27
- zsWpo4K50MP+QtdSbKXZwjAafpQ8hK0MnnZ/aeCsW9ov5vdXpYbf3dpg6ADXRGE7
28
- lQY2y1tJ5/chqu6h7dQmnm2ABUqx9O+JcN9hbCYoA5i/EeubUEtFIh2w3SpO6YfB
29
- JFmxn4h9YO/pVdB962BdBNNDia0kgIjI3ENnkLq0dKpYU3+F3KhEuTksLO0L6X/V
30
- YsuyUzsMz6GQA4khyaMgKNSD
24
+ AQA/X8/PKTTc/IkYQEUL6XWtfK8fAfbuLJzmLcz6f2ZWrtBvPsYvqRuwI1bWUtil
25
+ 2ibJEfIuSIHX6BsUTX18+hlaIussf6EWq/YkE7e2BKmgQE42vSOZMce0kCEAPbx0
26
+ rQtqonfWTHQ8UbQ7GqCL3gDQ0QDD2B+HUlb4uaCZ2icxqa/eOtxMvHC2tj+h0xKY
27
+ xL84ipM5kr0bHGf9/MRZJWcw51urueNycBXu1Xh+pEN8qBmYsFRR4SIODLClybAO
28
+ 6cbm2PyPQgKNiqE4H+IQrDVHd9bJs1XgLElk3qoaJBWXc/5fy0J1imYb25UqmiHG
29
+ snGe1hrppvBRdcyEzvhfIPjI
31
30
  -----END CERTIFICATE-----
32
- date: 2022-07-03 00:00:00.000000000 Z
31
+ date: 1980-01-02 00:00:00.000000000 Z
33
32
  dependencies:
33
+ - !ruby/object:Gem::Dependency
34
+ name: prism
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.5'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.5'
47
+ - !ruby/object:Gem::Dependency
48
+ name: drb
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '2.0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.0'
34
61
  - !ruby/object:Gem::Dependency
35
62
  name: rdoc
36
63
  requirement: !ruby/object:Gem::Requirement
37
64
  requirements:
38
65
  - - ">="
39
66
  - !ruby/object:Gem::Version
40
- version: '4.0'
67
+ version: '6.0'
41
68
  - - "<"
42
69
  - !ruby/object:Gem::Version
43
- version: '7'
70
+ version: '8'
44
71
  type: :development
45
72
  prerelease: false
46
73
  version_requirements: !ruby/object:Gem::Requirement
47
74
  requirements:
48
75
  - - ">="
49
76
  - !ruby/object:Gem::Version
50
- version: '4.0'
77
+ version: '6.0'
51
78
  - - "<"
52
79
  - !ruby/object:Gem::Version
53
- version: '7'
80
+ version: '8'
81
+ - !ruby/object:Gem::Dependency
82
+ name: simplecov
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '0.21'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '0.21'
54
95
  - !ruby/object:Gem::Dependency
55
96
  name: hoe
56
97
  requirement: !ruby/object:Gem::Requirement
57
98
  requirements:
58
99
  - - "~>"
59
100
  - !ruby/object:Gem::Version
60
- version: '3.24'
101
+ version: '4.6'
61
102
  type: :development
62
103
  prerelease: false
63
104
  version_requirements: !ruby/object:Gem::Requirement
64
105
  requirements:
65
106
  - - "~>"
66
107
  - !ruby/object:Gem::Version
67
- version: '3.24'
108
+ version: '4.6'
68
109
  description: |-
69
110
  minitest provides a complete suite of testing facilities supporting
70
- TDD, BDD, mocking, and benchmarking.
111
+ TDD, BDD, and benchmarking.
71
112
 
72
113
  "I had a class with Jim Weirich on testing last week and we were
73
114
  allowed to choose our testing frameworks. Kirk Haines and I were
@@ -93,9 +134,6 @@ description: |-
93
134
  co-worker doesn't replace your linear algorithm with an exponential
94
135
  one!
95
136
 
96
- minitest/mock by Steven Baker, is a beautifully tiny mock (and stub)
97
- object framework.
98
-
99
137
  minitest/pride shows pride in testing and adds coloring to your test
100
138
  output. I guess it is an example of how to write IO pipes too. :P
101
139
 
@@ -119,51 +157,77 @@ description: |-
119
157
  classes, modules, inheritance, methods. This means you only have to
120
158
  learn ruby to use minitest and all of your regular OO practices like
121
159
  extract-method refactorings still apply.
160
+
161
+ == Features/Problems:
162
+
163
+ * minitest/autorun - the easy and explicit way to run all your tests.
164
+ * minitest/test - a very fast, simple, and clean test system.
165
+ * minitest/spec - a very fast, simple, and clean spec system.
166
+ * minitest/benchmark - an awesome way to assert your algorithm's performance.
167
+ * minitest/pride - show your pride in testing!
168
+ * minitest/test_task - a full-featured and clean rake task generator.
169
+ * Incredibly small and fast runner, but no bells and whistles.
170
+ * Written by squishy human beings. Software can never be perfect. We will all eventually die.
122
171
  email:
123
172
  - ryand-ruby@zenspider.com
124
- executables: []
173
+ executables:
174
+ - minitest
125
175
  extensions: []
126
176
  extra_rdoc_files:
127
177
  - History.rdoc
128
178
  - Manifest.txt
129
179
  - README.rdoc
130
180
  files:
131
- - ".autotest"
132
181
  - History.rdoc
133
182
  - Manifest.txt
134
183
  - README.rdoc
135
184
  - Rakefile
185
+ - bin/minitest
136
186
  - design_rationale.rb
137
187
  - lib/hoe/minitest.rb
138
188
  - lib/minitest.rb
139
189
  - lib/minitest/assertions.rb
140
190
  - lib/minitest/autorun.rb
141
191
  - lib/minitest/benchmark.rb
192
+ - lib/minitest/bisect.rb
193
+ - lib/minitest/complete.rb
194
+ - lib/minitest/compress.rb
195
+ - lib/minitest/error_on_warning.rb
142
196
  - lib/minitest/expectations.rb
197
+ - lib/minitest/find_minimal_combination.rb
143
198
  - lib/minitest/hell.rb
144
- - lib/minitest/mock.rb
199
+ - lib/minitest/manual_plugins.rb
145
200
  - lib/minitest/parallel.rb
201
+ - lib/minitest/path_expander.rb
146
202
  - lib/minitest/pride.rb
147
203
  - lib/minitest/pride_plugin.rb
204
+ - lib/minitest/server.rb
205
+ - lib/minitest/server_plugin.rb
148
206
  - lib/minitest/spec.rb
207
+ - lib/minitest/sprint.rb
208
+ - lib/minitest/sprint_plugin.rb
149
209
  - lib/minitest/test.rb
150
210
  - lib/minitest/test_task.rb
151
- - lib/minitest/unit.rb
152
211
  - test/minitest/metametameta.rb
212
+ - test/minitest/test_bisect.rb
213
+ - test/minitest/test_find_minimal_combination.rb
153
214
  - test/minitest/test_minitest_assertions.rb
154
215
  - test/minitest/test_minitest_benchmark.rb
155
- - test/minitest/test_minitest_mock.rb
156
216
  - test/minitest/test_minitest_reporter.rb
157
217
  - test/minitest/test_minitest_spec.rb
158
218
  - test/minitest/test_minitest_test.rb
159
219
  - test/minitest/test_minitest_test_task.rb
160
- homepage: https://github.com/seattlerb/minitest
220
+ - test/minitest/test_path_expander.rb
221
+ - test/minitest/test_server.rb
222
+ homepage: https://minite.st/
161
223
  licenses:
162
224
  - MIT
163
225
  metadata:
164
- homepage_uri: https://github.com/seattlerb/minitest
165
- bug_tracker_uri: https://github.com/seattlerb/minitest/issues
166
- post_install_message:
226
+ homepage_uri: https://minite.st/
227
+ source_code_uri: https://github.com/minitest/minitest
228
+ bug_tracker_uri: https://github.com/minitest/minitest/issues
229
+ documentation_uri: https://docs.seattlerb.org/minitest
230
+ changelog_uri: https://github.com/minitest/minitest/blob/master/History.rdoc
167
231
  rdoc_options:
168
232
  - "--main"
169
233
  - README.rdoc
@@ -173,19 +237,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
173
237
  requirements:
174
238
  - - ">="
175
239
  - !ruby/object:Gem::Version
176
- version: '2.6'
177
- - - "<"
178
- - !ruby/object:Gem::Version
179
- version: '4.0'
240
+ version: '3.2'
180
241
  required_rubygems_version: !ruby/object:Gem::Requirement
181
242
  requirements:
182
243
  - - ">="
183
244
  - !ruby/object:Gem::Version
184
245
  version: '0'
185
246
  requirements: []
186
- rubygems_version: 3.3.12
187
- signing_key:
247
+ rubygems_version: 3.7.2
188
248
  specification_version: 4
189
249
  summary: minitest provides a complete suite of testing facilities supporting TDD,
190
- BDD, mocking, and benchmarking
250
+ BDD, and benchmarking
191
251
  test_files: []
metadata.gz.sig CHANGED
Binary file