minitest 5.25.5 → 6.0.4
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 +4 -4
- checksums.yaml.gz.sig +2 -4
- data/History.rdoc +156 -0
- data/Manifest.txt +13 -4
- data/README.rdoc +21 -100
- data/Rakefile +10 -2
- data/bin/minitest +5 -0
- data/design_rationale.rb +21 -19
- data/lib/hoe/minitest.rb +2 -1
- data/lib/minitest/assertions.rb +39 -73
- data/lib/minitest/autorun.rb +3 -4
- data/lib/minitest/benchmark.rb +3 -3
- data/lib/minitest/bisect.rb +304 -0
- data/lib/minitest/complete.rb +56 -0
- data/lib/minitest/find_minimal_combination.rb +127 -0
- data/lib/minitest/hell.rb +1 -1
- data/lib/minitest/manual_plugins.rb +4 -16
- data/lib/minitest/parallel.rb +5 -3
- data/lib/minitest/path_expander.rb +432 -0
- data/lib/minitest/pride.rb +2 -2
- data/lib/minitest/pride_plugin.rb +1 -1
- data/lib/minitest/server.rb +49 -0
- data/lib/minitest/server_plugin.rb +88 -0
- data/lib/minitest/spec.rb +11 -37
- data/lib/minitest/sprint.rb +105 -0
- data/lib/minitest/sprint_plugin.rb +39 -0
- data/lib/minitest/test.rb +8 -13
- data/lib/minitest/test_task.rb +44 -20
- data/lib/minitest.rb +104 -107
- data/test/minitest/metametameta.rb +1 -1
- data/test/minitest/test_bisect.rb +249 -0
- data/test/minitest/test_find_minimal_combination.rb +138 -0
- data/test/minitest/test_minitest_assertions.rb +54 -105
- data/test/minitest/test_minitest_benchmark.rb +14 -0
- data/test/minitest/test_minitest_reporter.rb +6 -5
- data/test/minitest/test_minitest_spec.rb +60 -128
- data/test/minitest/test_minitest_test.rb +22 -101
- data/test/minitest/test_path_expander.rb +229 -0
- data/test/minitest/test_server.rb +146 -0
- data.tar.gz.sig +0 -0
- metadata +92 -33
- metadata.gz.sig +0 -0
- data/.autotest +0 -34
- data/lib/minitest/mock.rb +0 -347
- data/lib/minitest/unit.rb +0 -42
- data/test/minitest/test_minitest_mock.rb +0 -1218
|
@@ -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
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: minitest
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 6.0.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ryan Davis
|
|
@@ -9,9 +9,9 @@ bindir: bin
|
|
|
9
9
|
cert_chain:
|
|
10
10
|
- |
|
|
11
11
|
-----BEGIN CERTIFICATE-----
|
|
12
|
-
|
|
12
|
+
MIIDPjCCAiagAwIBAgIBCjANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
|
|
13
13
|
ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
|
|
14
|
-
|
|
14
|
+
GRYDY29tMB4XDTI2MDEwNzAxMDkxNFoXDTI3MDEwNzAxMDkxNFowRTETMBEGA1UE
|
|
15
15
|
AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
|
|
16
16
|
JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
|
|
17
17
|
b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
|
|
@@ -21,52 +21,94 @@ cert_chain:
|
|
|
21
21
|
qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
|
|
22
22
|
gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
|
23
23
|
HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
AQA/X8/PKTTc/IkYQEUL6XWtfK8fAfbuLJzmLcz6f2ZWrtBvPsYvqRuwI1bWUtil
|
|
25
|
+
2ibJEfIuSIHX6BsUTX18+hlaIussf6EWq/YkE7e2BKmgQE42vSOZMce0kCEAPbx0
|
|
26
|
+
rQtqonfWTHQ8UbQ7GqCL3gDQ0QDD2B+HUlb4uaCZ2icxqa/eOtxMvHC2tj+h0xKY
|
|
27
|
+
xL84ipM5kr0bHGf9/MRZJWcw51urueNycBXu1Xh+pEN8qBmYsFRR4SIODLClybAO
|
|
28
|
+
6cbm2PyPQgKNiqE4H+IQrDVHd9bJs1XgLElk3qoaJBWXc/5fy0J1imYb25UqmiHG
|
|
29
|
+
snGe1hrppvBRdcyEzvhfIPjI
|
|
30
30
|
-----END CERTIFICATE-----
|
|
31
|
-
date:
|
|
31
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
32
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'
|
|
33
61
|
- !ruby/object:Gem::Dependency
|
|
34
62
|
name: rdoc
|
|
35
63
|
requirement: !ruby/object:Gem::Requirement
|
|
36
64
|
requirements:
|
|
37
65
|
- - ">="
|
|
38
66
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '
|
|
67
|
+
version: '6.0'
|
|
40
68
|
- - "<"
|
|
41
69
|
- !ruby/object:Gem::Version
|
|
42
|
-
version: '
|
|
70
|
+
version: '8'
|
|
43
71
|
type: :development
|
|
44
72
|
prerelease: false
|
|
45
73
|
version_requirements: !ruby/object:Gem::Requirement
|
|
46
74
|
requirements:
|
|
47
75
|
- - ">="
|
|
48
76
|
- !ruby/object:Gem::Version
|
|
49
|
-
version: '
|
|
77
|
+
version: '6.0'
|
|
50
78
|
- - "<"
|
|
51
79
|
- !ruby/object:Gem::Version
|
|
52
|
-
version: '
|
|
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'
|
|
53
95
|
- !ruby/object:Gem::Dependency
|
|
54
96
|
name: hoe
|
|
55
97
|
requirement: !ruby/object:Gem::Requirement
|
|
56
98
|
requirements:
|
|
57
99
|
- - "~>"
|
|
58
100
|
- !ruby/object:Gem::Version
|
|
59
|
-
version: '4.
|
|
101
|
+
version: '4.6'
|
|
60
102
|
type: :development
|
|
61
103
|
prerelease: false
|
|
62
104
|
version_requirements: !ruby/object:Gem::Requirement
|
|
63
105
|
requirements:
|
|
64
106
|
- - "~>"
|
|
65
107
|
- !ruby/object:Gem::Version
|
|
66
|
-
version: '4.
|
|
108
|
+
version: '4.6'
|
|
67
109
|
description: |-
|
|
68
110
|
minitest provides a complete suite of testing facilities supporting
|
|
69
|
-
TDD, BDD,
|
|
111
|
+
TDD, BDD, and benchmarking.
|
|
70
112
|
|
|
71
113
|
"I had a class with Jim Weirich on testing last week and we were
|
|
72
114
|
allowed to choose our testing frameworks. Kirk Haines and I were
|
|
@@ -92,9 +134,6 @@ description: |-
|
|
|
92
134
|
co-worker doesn't replace your linear algorithm with an exponential
|
|
93
135
|
one!
|
|
94
136
|
|
|
95
|
-
minitest/mock by Steven Baker, is a beautifully tiny mock (and stub)
|
|
96
|
-
object framework.
|
|
97
|
-
|
|
98
137
|
minitest/pride shows pride in testing and adds coloring to your test
|
|
99
138
|
output. I guess it is an example of how to write IO pipes too. :P
|
|
100
139
|
|
|
@@ -118,53 +157,76 @@ description: |-
|
|
|
118
157
|
classes, modules, inheritance, methods. This means you only have to
|
|
119
158
|
learn ruby to use minitest and all of your regular OO practices like
|
|
120
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.
|
|
121
171
|
email:
|
|
122
172
|
- ryand-ruby@zenspider.com
|
|
123
|
-
executables:
|
|
173
|
+
executables:
|
|
174
|
+
- minitest
|
|
124
175
|
extensions: []
|
|
125
176
|
extra_rdoc_files:
|
|
126
177
|
- History.rdoc
|
|
127
178
|
- Manifest.txt
|
|
128
179
|
- README.rdoc
|
|
129
180
|
files:
|
|
130
|
-
- ".autotest"
|
|
131
181
|
- History.rdoc
|
|
132
182
|
- Manifest.txt
|
|
133
183
|
- README.rdoc
|
|
134
184
|
- Rakefile
|
|
185
|
+
- bin/minitest
|
|
135
186
|
- design_rationale.rb
|
|
136
187
|
- lib/hoe/minitest.rb
|
|
137
188
|
- lib/minitest.rb
|
|
138
189
|
- lib/minitest/assertions.rb
|
|
139
190
|
- lib/minitest/autorun.rb
|
|
140
191
|
- lib/minitest/benchmark.rb
|
|
192
|
+
- lib/minitest/bisect.rb
|
|
193
|
+
- lib/minitest/complete.rb
|
|
141
194
|
- lib/minitest/compress.rb
|
|
142
195
|
- lib/minitest/error_on_warning.rb
|
|
143
196
|
- lib/minitest/expectations.rb
|
|
197
|
+
- lib/minitest/find_minimal_combination.rb
|
|
144
198
|
- lib/minitest/hell.rb
|
|
145
199
|
- lib/minitest/manual_plugins.rb
|
|
146
|
-
- lib/minitest/mock.rb
|
|
147
200
|
- lib/minitest/parallel.rb
|
|
201
|
+
- lib/minitest/path_expander.rb
|
|
148
202
|
- lib/minitest/pride.rb
|
|
149
203
|
- lib/minitest/pride_plugin.rb
|
|
204
|
+
- lib/minitest/server.rb
|
|
205
|
+
- lib/minitest/server_plugin.rb
|
|
150
206
|
- lib/minitest/spec.rb
|
|
207
|
+
- lib/minitest/sprint.rb
|
|
208
|
+
- lib/minitest/sprint_plugin.rb
|
|
151
209
|
- lib/minitest/test.rb
|
|
152
210
|
- lib/minitest/test_task.rb
|
|
153
|
-
- lib/minitest/unit.rb
|
|
154
211
|
- test/minitest/metametameta.rb
|
|
212
|
+
- test/minitest/test_bisect.rb
|
|
213
|
+
- test/minitest/test_find_minimal_combination.rb
|
|
155
214
|
- test/minitest/test_minitest_assertions.rb
|
|
156
215
|
- test/minitest/test_minitest_benchmark.rb
|
|
157
|
-
- test/minitest/test_minitest_mock.rb
|
|
158
216
|
- test/minitest/test_minitest_reporter.rb
|
|
159
217
|
- test/minitest/test_minitest_spec.rb
|
|
160
218
|
- test/minitest/test_minitest_test.rb
|
|
161
219
|
- test/minitest/test_minitest_test_task.rb
|
|
162
|
-
|
|
220
|
+
- test/minitest/test_path_expander.rb
|
|
221
|
+
- test/minitest/test_server.rb
|
|
222
|
+
homepage: https://minite.st/
|
|
163
223
|
licenses:
|
|
164
224
|
- MIT
|
|
165
225
|
metadata:
|
|
166
|
-
homepage_uri: https://
|
|
226
|
+
homepage_uri: https://minite.st/
|
|
227
|
+
source_code_uri: https://github.com/minitest/minitest
|
|
167
228
|
bug_tracker_uri: https://github.com/minitest/minitest/issues
|
|
229
|
+
documentation_uri: https://docs.seattlerb.org/minitest
|
|
168
230
|
changelog_uri: https://github.com/minitest/minitest/blob/master/History.rdoc
|
|
169
231
|
rdoc_options:
|
|
170
232
|
- "--main"
|
|
@@ -175,18 +237,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
175
237
|
requirements:
|
|
176
238
|
- - ">="
|
|
177
239
|
- !ruby/object:Gem::Version
|
|
178
|
-
version: '2
|
|
179
|
-
- - "<"
|
|
180
|
-
- !ruby/object:Gem::Version
|
|
181
|
-
version: '4.0'
|
|
240
|
+
version: '3.2'
|
|
182
241
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
183
242
|
requirements:
|
|
184
243
|
- - ">="
|
|
185
244
|
- !ruby/object:Gem::Version
|
|
186
245
|
version: '0'
|
|
187
246
|
requirements: []
|
|
188
|
-
rubygems_version: 3.
|
|
247
|
+
rubygems_version: 3.7.2
|
|
189
248
|
specification_version: 4
|
|
190
249
|
summary: minitest provides a complete suite of testing facilities supporting TDD,
|
|
191
|
-
BDD,
|
|
250
|
+
BDD, and benchmarking
|
|
192
251
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|
data/.autotest
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
# -*- ruby -*-
|
|
2
|
-
|
|
3
|
-
require 'autotest/restart'
|
|
4
|
-
require 'autotest/rcov' if ENV['RCOV']
|
|
5
|
-
|
|
6
|
-
Autotest.add_hook :initialize do |at|
|
|
7
|
-
at.testlib = 'minitest/autorun'
|
|
8
|
-
|
|
9
|
-
bench_tests = %w(TestMinitestBenchmark)
|
|
10
|
-
mock_tests = %w(TestMinitestMock TestMinitestStub)
|
|
11
|
-
spec_tests = %w(TestMinitestReporter TestMetaStatic TestMeta
|
|
12
|
-
TestSpecInTestCase)
|
|
13
|
-
unit_tests = %w(TestMinitestGuard TestMinitestRunnable
|
|
14
|
-
TestMinitestRunner TestMinitestTest TestMinitestUnit
|
|
15
|
-
TestMinitestUnitInherited TestMinitestUnitOrder
|
|
16
|
-
TestMinitestUnitRecording TestMinitestUnitTestCase)
|
|
17
|
-
|
|
18
|
-
{
|
|
19
|
-
bench_tests => "test/minitest/test_minitest_benchmark.rb",
|
|
20
|
-
mock_tests => "test/minitest/test_minitest_mock.rb",
|
|
21
|
-
spec_tests => "test/minitest/test_minitest_reporter.rb",
|
|
22
|
-
unit_tests => "test/minitest/test_minitest_unit.rb",
|
|
23
|
-
}.each do |klasses, file|
|
|
24
|
-
klasses.each do |klass|
|
|
25
|
-
at.extra_class_map[klass] = file
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
at.add_exception 'coverage.info'
|
|
30
|
-
at.add_exception 'coverage'
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
# require 'autotest/rcov'
|
|
34
|
-
# Autotest::RCov.command = 'rcov_info'
|