minitest 2.12.1 → 3.0.0

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.
data.tar.gz.sig CHANGED
Binary file
data/.autotest CHANGED
@@ -10,6 +10,7 @@ Autotest.add_hook :initialize do |at|
10
10
  at.extra_class_map["TestMeta"] = "test/test_minitest_spec.rb"
11
11
  at.extra_class_map["TestMiniTestUnitTestCase"] = "test/test_minitest_unit.rb"
12
12
  at.extra_class_map["TestMiniTestUnit"] = "test/test_minitest_unit.rb"
13
+ at.extra_class_map["TestMiniTestStub"] = "test/test_minitest_mock.rb"
13
14
  at.add_exception 'coverage.info'
14
15
  at.add_exception 'coverage'
15
16
  end
@@ -1,3 +1,21 @@
1
+ === 3.0.0 / 2012-05-08
2
+
3
+ * 3 major enhancements:
4
+
5
+ * Added Object#stub (in minitest/mock.rb).
6
+ * Mock#expect mocks are used in the order they're given.
7
+ * Mock#verify now strictly compares against expect calls.
8
+
9
+ * 3 minor enhancements:
10
+
11
+ * Added caller to deprecation message.
12
+ * Mock error messages are much prettier.
13
+ * Removed String check for RHS of assert/refute_match. This lets #to_str work properly.
14
+
15
+ * 1 bug fix:
16
+
17
+ * Support drive letter on Windows. Patch provided from MRI by Usaku NAKAMURA. (ayumin)
18
+
1
19
  === 2.12.1 / 2012-04-10
2
20
 
3
21
  * 1 minor enhancement:
@@ -11,8 +11,8 @@ lib/minitest/mock.rb
11
11
  lib/minitest/pride.rb
12
12
  lib/minitest/spec.rb
13
13
  lib/minitest/unit.rb
14
- test/metametameta.rb
15
- test/test_minitest_benchmark.rb
16
- test/test_minitest_mock.rb
17
- test/test_minitest_spec.rb
18
- test/test_minitest_unit.rb
14
+ test/minitest/metametameta.rb
15
+ test/minitest/test_minitest_benchmark.rb
16
+ test/minitest/test_minitest_mock.rb
17
+ test/minitest/test_minitest_spec.rb
18
+ test/minitest/test_minitest_unit.rb
data/README.txt CHANGED
@@ -33,8 +33,8 @@ algorithms in a repeatable manner. Now you can assert that your newb
33
33
  co-worker doesn't replace your linear algorithm with an exponential
34
34
  one!
35
35
 
36
- minitest/mock by Steven Baker, is a beautifully tiny mock object
37
- framework.
36
+ minitest/mock by Steven Baker, is a beautifully tiny mock (and stub)
37
+ object framework.
38
38
 
39
39
  minitest/pride shows pride in testing and adds coloring to your test
40
40
  output. I guess it is an example of how to write IO pipes too. :P
@@ -54,7 +54,7 @@ discovery.
54
54
  * minitest/autorun - the easy and explicit way to run all your tests.
55
55
  * minitest/unit - a very fast, simple, and clean test system.
56
56
  * minitest/spec - a very fast, simple, and clean spec system.
57
- * minitest/mock - a simple and clean mock system.
57
+ * minitest/mock - a simple and clean mock/stub system.
58
58
  * minitest/benchmark - an awesome way to assert your algorithm's performance.
59
59
  * minitest/pride - show your pride in testing!
60
60
  * Incredibly small and fast runner, but no bells and whistles.
@@ -194,6 +194,18 @@ Output is tab-delimited to make it easy to paste into a spreadsheet.
194
194
  end
195
195
  end
196
196
 
197
+ === Stubs
198
+
199
+ def test_stale_eh
200
+ obj_under_test = Something.new
201
+
202
+ refute obj_under_test.stale?
203
+
204
+ Time.stub :now, Time.at(0) do # stub goes away once the block is done
205
+ assert obj_under_test.stale?
206
+ end
207
+ end
208
+
197
209
  === Customizable Test Runner Types:
198
210
 
199
211
  MiniTest::Unit.runner=(runner) provides an easy way of creating custom
@@ -284,6 +296,7 @@ minitest-wscolor :: Yet another test colorizer.
284
296
  minitest_owrapper :: Get tests results as a TestResult object.
285
297
  minitest_should :: Shoulda style syntax for minitest test::unit.
286
298
  minitest_tu_shim :: minitest_tu_shim bridges between test/unit and minitest.
299
+ mongoid-minitest :: MiniTest matchers for Mongoid.
287
300
 
288
301
  == REQUIREMENTS:
289
302
 
@@ -50,6 +50,15 @@ module MiniTest
50
50
  self
51
51
  end
52
52
 
53
+ def call name, data
54
+ case data
55
+ when Hash then
56
+ "#{name}(#{data[:args].inspect[1..-2]}) => #{data[:retval].inspect}"
57
+ else
58
+ data.map { |d| call name, d }.join ", "
59
+ end
60
+ end
61
+
53
62
  ##
54
63
  # Verify that all methods were called as expected. Raises
55
64
  # +MockExpectationError+ if the mock object was not called as
@@ -58,8 +67,8 @@ module MiniTest
58
67
  def verify
59
68
  @expected_calls.each do |name, calls|
60
69
  calls.each do |expected|
61
- msg1 = "expected #{name}, #{expected.inspect}"
62
- msg2 = "#{msg1}, got #{@actual_calls[name].inspect}"
70
+ msg1 = "expected #{call name, expected}"
71
+ msg2 = "#{msg1}, got [#{call name, @actual_calls[name]}]"
63
72
 
64
73
  raise MockExpectationError, msg2 if
65
74
  @actual_calls.has_key? name and
@@ -78,25 +87,30 @@ module MiniTest
78
87
  [sym, @expected_calls.keys.sort_by(&:to_s)]
79
88
  end
80
89
 
81
- expected_calls = @expected_calls[sym].select { |call| call[:args].size == args.size }
90
+ index = @actual_calls[sym].length
91
+ expected_call = @expected_calls[sym][index]
82
92
 
83
- if expected_calls.empty?
84
- arg_sizes = @expected_calls[sym].map { |call| call[:args].size }.uniq.sort
85
- raise ArgumentError, "mocked method %p expects %s arguments, got %d" %
86
- [sym, arg_sizes.join('/'), args.size]
93
+ unless expected_call then
94
+ raise MockExpectationError, "No more expects available for %p: %p" %
95
+ [sym, args]
87
96
  end
88
97
 
89
- expected_call = expected_calls.find do |call|
90
- call[:args].zip(args).all? { |mod, a| mod === a or mod == a }
98
+ expected_args, retval = expected_call[:args], expected_call[:retval]
99
+
100
+ if expected_args.size != args.size then
101
+ raise ArgumentError, "mocked method %p expects %d arguments, got %d" %
102
+ [sym, expected_args.size, args.size]
91
103
  end
92
104
 
93
- unless expected_call
105
+ fully_matched = expected_args.zip(args).all? { |mod, a|
106
+ mod === a or mod == a
107
+ }
108
+
109
+ unless fully_matched then
94
110
  raise MockExpectationError, "mocked method %p called with unexpected arguments %p" %
95
111
  [sym, args]
96
112
  end
97
113
 
98
- expected_args, retval = expected_call[:args], expected_call[:retval]
99
-
100
114
  @actual_calls[sym] << {
101
115
  :retval => retval,
102
116
  :args => expected_args.zip(args).map { |mod, a| mod === a ? mod : a }
@@ -111,3 +125,41 @@ module MiniTest
111
125
  end
112
126
  end
113
127
  end
128
+
129
+ class Object # :nodoc:
130
+
131
+ ##
132
+ # Add a temporary stubbed method replacing +name+ for the duration
133
+ # of the +block+. If +val_or_callable+ responds to #call, then it
134
+ # returns the result of calling it, otherwise returns the value
135
+ # as-is. Cleans up the stub at the end of the +block+.
136
+ #
137
+ # def test_stale_eh
138
+ # obj_under_test = Something.new
139
+ # refute obj_under_test.stale?
140
+ #
141
+ # Time.stub :now, Time.at(0) do
142
+ # assert obj_under_test.stale?
143
+ # end
144
+ # end
145
+
146
+ def stub name, val_or_callable, &block
147
+ new_name = "__minitest_stub__#{name}"
148
+
149
+ metaclass = class << self; self; end
150
+ metaclass.send :alias_method, new_name, name
151
+ metaclass.send :define_method, name do |*args|
152
+ if val_or_callable.respond_to? :call then
153
+ val_or_callable.call(*args)
154
+ else
155
+ val_or_callable
156
+ end
157
+ end
158
+
159
+ yield
160
+ ensure
161
+ metaclass.send :undef_method, name
162
+ metaclass.send :alias_method, name, new_name
163
+ metaclass.send :undef_method, new_name
164
+ end
165
+ end
@@ -186,7 +186,7 @@ module MiniTest
186
186
  # Fails unless the block returns a true value.
187
187
 
188
188
  def assert_block msg = nil
189
- warn "NOTE: MiniTest::Unit::TestCase#assert_block is deprecated, use assert. It will be removed on or after 2012-06-01."
189
+ warn "NOTE: MiniTest::Unit::TestCase#assert_block is deprecated, use assert. It will be removed on or after 2012-06-01. Called from #{caller.first}"
190
190
  msg = message(msg) { "Expected block to return true value" }
191
191
  assert yield, msg
192
192
  end
@@ -270,13 +270,13 @@ module MiniTest
270
270
  end
271
271
 
272
272
  ##
273
- # Fails unless +exp+ is <tt>=~</tt> +act+.
273
+ # Fails unless +matcher+ <tt>=~</tt> +obj+.
274
274
 
275
- def assert_match exp, act, msg = nil
276
- msg = message(msg) { "Expected #{mu_pp(exp)} to match #{mu_pp(act)}" }
277
- assert_respond_to act, :"=~"
278
- exp = Regexp.new Regexp.escape exp if String === exp and String === act
279
- assert exp =~ act, msg
275
+ def assert_match matcher, obj, msg = nil
276
+ msg = message(msg) { "Expected #{mu_pp matcher} to match #{mu_pp obj}" }
277
+ assert_respond_to matcher, :"=~"
278
+ matcher = Regexp.new Regexp.escape matcher if String === matcher
279
+ assert matcher =~ obj, msg
280
280
  end
281
281
 
282
282
  ##
@@ -521,7 +521,7 @@ module MiniTest
521
521
  end
522
522
 
523
523
  ##
524
- # For comparing Floats. Fails if +exp+ is within +delta+ of +act+
524
+ # For comparing Floats. Fails if +exp+ is within +delta+ of +act+.
525
525
  #
526
526
  # refute_in_delta Math::PI, (22.0 / 7.0)
527
527
 
@@ -542,7 +542,7 @@ module MiniTest
542
542
  end
543
543
 
544
544
  ##
545
- # Fails if +collection+ includes +obj+
545
+ # Fails if +collection+ includes +obj+.
546
546
 
547
547
  def refute_includes collection, obj, msg = nil
548
548
  msg = message(msg) {
@@ -553,7 +553,7 @@ module MiniTest
553
553
  end
554
554
 
555
555
  ##
556
- # Fails if +obj+ is an instance of +cls+
556
+ # Fails if +obj+ is an instance of +cls+.
557
557
 
558
558
  def refute_instance_of cls, obj, msg = nil
559
559
  msg = message(msg) {
@@ -563,7 +563,7 @@ module MiniTest
563
563
  end
564
564
 
565
565
  ##
566
- # Fails if +obj+ is a kind of +cls+
566
+ # Fails if +obj+ is a kind of +cls+.
567
567
 
568
568
  def refute_kind_of cls, obj, msg = nil # TODO: merge with instance_of
569
569
  msg = message(msg) { "Expected #{mu_pp(obj)} to not be a kind of #{cls}" }
@@ -571,13 +571,13 @@ module MiniTest
571
571
  end
572
572
 
573
573
  ##
574
- # Fails if +exp+ <tt>=~</tt> +act+
574
+ # Fails if +matcher+ <tt>=~</tt> +obj+.
575
575
 
576
- def refute_match exp, act, msg = nil
577
- msg = message(msg) { "Expected #{mu_pp(exp)} to not match #{mu_pp(act)}" }
578
- assert_respond_to act, :"=~"
579
- exp = (/#{Regexp.escape exp}/) if String === exp and String === act
580
- refute exp =~ act, msg
576
+ def refute_match matcher, obj, msg = nil
577
+ msg = message(msg) {"Expected #{mu_pp matcher} to not match #{mu_pp obj}"}
578
+ assert_respond_to matcher, :"=~"
579
+ matcher = Regexp.new Regexp.escape matcher if String === matcher
580
+ refute matcher =~ obj, msg
581
581
  end
582
582
 
583
583
  ##
@@ -645,7 +645,7 @@ module MiniTest
645
645
  end
646
646
 
647
647
  class Unit # :nodoc:
648
- VERSION = "2.12.1" # :nodoc:
648
+ VERSION = "3.0.0" # :nodoc:
649
649
 
650
650
  attr_accessor :report, :failures, :errors, :skips # :nodoc:
651
651
  attr_accessor :test_count, :assertion_count # :nodoc:
@@ -19,8 +19,15 @@ class MetaMetaMetaTestCase < MiniTest::Unit::TestCase
19
19
  output = @output.string.dup
20
20
  output.sub!(/Finished tests in .*/, "Finished tests in 0.00")
21
21
  output.sub!(/Loaded suite .*/, 'Loaded suite blah')
22
- output.gsub!(/\[[^\]:]+:\d+\]/, '[FILE:LINE]')
23
- output.gsub!(/^(\s+)[^:]+:\d+:in/, '\1FILE:LINE:in')
22
+
23
+ if windows? then
24
+ output.gsub!(/\[(?:[A-Za-z]:)?[^\]:]+:\d+\]/, '[FILE:LINE]')
25
+ output.gsub!(/^(\s+)(?:[A-Za-z]:)?[^:]+:\d+:in/, '\1FILE:LINE:in')
26
+ else
27
+ output.gsub!(/\[[^\]:]+:\d+\]/, '[FILE:LINE]')
28
+ output.gsub!(/^(\s+)[^:]+:\d+:in/, '\1FILE:LINE:in')
29
+ end
30
+
24
31
  assert_equal(expected, output)
25
32
  end
26
33
 
@@ -20,7 +20,7 @@ class TestMiniTestMock < MiniTest::Unit::TestCase
20
20
  def test_blow_up_if_not_called
21
21
  @mock.foo
22
22
 
23
- util_verify_bad
23
+ util_verify_bad "expected meaning_of_life() => 42, got []"
24
24
  end
25
25
 
26
26
  def test_not_blow_up_if_everything_called
@@ -40,7 +40,7 @@ class TestMiniTestMock < MiniTest::Unit::TestCase
40
40
  @mock.meaning_of_life
41
41
  @mock.expect(:bar, true)
42
42
 
43
- util_verify_bad
43
+ util_verify_bad "expected bar() => true, got []"
44
44
  end
45
45
 
46
46
  def test_blow_up_on_wrong_number_of_arguments
@@ -78,15 +78,20 @@ class TestMiniTestMock < MiniTest::Unit::TestCase
78
78
  @mock.meaning_of_life
79
79
  @mock.expect(:sum, 3, [1, 2])
80
80
 
81
- assert_raises MockExpectationError do
81
+ e = assert_raises MockExpectationError do
82
82
  @mock.sum(2, 4)
83
83
  end
84
+
85
+ exp = "mocked method :sum called with unexpected arguments [2, 4]"
86
+ assert_equal exp, e.message
84
87
  end
85
88
 
86
89
  def test_expect_with_non_array_args
87
- assert_raises ArgumentError do
90
+ e = assert_raises ArgumentError do
88
91
  @mock.expect :blah, 3, false
89
92
  end
93
+
94
+ assert_equal "args must be an array", e.message
90
95
  end
91
96
 
92
97
  def test_respond_appropriately
@@ -143,27 +148,26 @@ class TestMiniTestMock < MiniTest::Unit::TestCase
143
148
  mock = MiniTest::Mock.new
144
149
  mock.expect :strict_expectation, true, [2]
145
150
 
146
- assert_raises MockExpectationError do
151
+ e = assert_raises MockExpectationError do
147
152
  mock.strict_expectation 1
148
153
  end
154
+
155
+ exp = "mocked method :strict_expectation called with unexpected arguments [1]"
156
+ assert_equal exp, e.message
149
157
  end
150
158
 
151
- def test_verify_shows_the_actual_arguments_in_the_message
159
+ def test_method_missing_empty
152
160
  mock = MiniTest::Mock.new
153
- mock.expect :capitalized, true, ["a"]
154
- mock.expect :capitalized, true, ["b"]
155
161
 
156
- mock.capitalized "b"
162
+ mock.expect :a, nil
163
+
164
+ mock.a
157
165
 
158
166
  e = assert_raises MockExpectationError do
159
- mock.verify
167
+ mock.a
160
168
  end
161
169
 
162
- a = {:retval=>true, :args=>["a"]}
163
- b = {:retval=>true, :args=>["b"]}
164
-
165
- expected = "expected capitalized, #{a.inspect}, got [#{b.inspect}]"
166
- assert_equal expected, e.message
170
+ assert_equal "No more expects available for :a: []", e.message
167
171
  end
168
172
 
169
173
  def test_same_method_expects_are_verified_when_all_called
@@ -182,14 +186,79 @@ class TestMiniTestMock < MiniTest::Unit::TestCase
182
186
  mock.expect :foo, nil, [:bar]
183
187
  mock.expect :foo, nil, [:baz]
184
188
 
185
- mock.foo :baz
189
+ mock.foo :bar
190
+
191
+ e = assert_raises(MockExpectationError) { mock.verify }
186
192
 
187
- assert_raises(MockExpectationError) { mock.verify }
193
+ exp = "expected foo(:baz) => nil, got [foo(:bar) => nil]"
194
+
195
+ assert_equal exp, e.message
188
196
  end
189
-
190
- def util_verify_bad
191
- assert_raises MockExpectationError do
197
+
198
+ def util_verify_bad exp
199
+ e = assert_raises MockExpectationError do
192
200
  @mock.verify
193
201
  end
202
+
203
+ assert_equal exp, e.message
204
+ end
205
+ end
206
+
207
+ require "test/minitest/metametameta"
208
+
209
+ class TestMiniTestStub < MiniTest::Unit::TestCase
210
+ def setup
211
+ super
212
+ MiniTest::Unit::TestCase.reset
213
+
214
+ @tc = MiniTest::Unit::TestCase.new 'fake tc'
215
+ @assertion_count = 1
216
+ end
217
+
218
+ def teardown
219
+ super
220
+ assert_equal @assertion_count, @tc._assertions
221
+ end
222
+
223
+ def assert_stub val_or_callable
224
+ @assertion_count += 1
225
+
226
+ t = Time.now.to_i
227
+
228
+ Time.stub :now, val_or_callable do
229
+ @tc.assert_equal 42, Time.now
230
+ end
231
+
232
+ @tc.assert_operator Time.now.to_i, :>=, t
233
+ end
234
+
235
+ def test_stub_value
236
+ assert_stub 42
237
+ end
238
+
239
+ def test_stub_block
240
+ assert_stub lambda { 42 }
241
+ end
242
+
243
+ def test_stub_block_args
244
+ @assertion_count += 1
245
+
246
+ t = Time.now.to_i
247
+
248
+ Time.stub :now, lambda { |n| n * 2 } do
249
+ @tc.assert_equal 42, Time.now(21)
250
+ end
251
+
252
+ @tc.assert_operator Time.now.to_i, :>=, t
253
+ end
254
+
255
+ def test_stub_callable
256
+ obj = Object.new
257
+
258
+ def obj.call
259
+ 42
260
+ end
261
+
262
+ assert_stub obj
194
263
  end
195
264
  end
@@ -1,5 +1,5 @@
1
1
  require 'pathname'
2
- require 'test/metametameta'
2
+ require 'test/minitest/metametameta'
3
3
 
4
4
  module MyModule; end
5
5
  class AnError < StandardError; include MyModule; end
@@ -699,13 +699,16 @@ class TestMiniTestUnitTestCase < MiniTest::Unit::TestCase
699
699
 
700
700
  def test_assert_block
701
701
  exp = ["NOTE: MiniTest::Unit::TestCase#assert_block is deprecated,",
702
- "use assert. It will be removed on or after 2012-06-01.\n"].join " "
702
+ "use assert. It will be removed on or after 2012-06-01."].join " "
703
703
 
704
- assert_output "", exp do
704
+ out, err = capture_io do
705
705
  @tc.assert_block do
706
706
  true
707
707
  end
708
708
  end
709
+
710
+ assert_equal "", out
711
+ assert_match exp, err
709
712
  end
710
713
 
711
714
  def test_assert_block_triggered
@@ -927,7 +930,7 @@ class TestMiniTestUnitTestCase < MiniTest::Unit::TestCase
927
930
  @tc.assert_match(/\w+/, "blah blah blah")
928
931
  end
929
932
 
930
- def test_assert_match_object
933
+ def test_assert_match_matcher_object
931
934
  @assertion_count = 2
932
935
 
933
936
  pattern = Object.new
@@ -936,6 +939,15 @@ class TestMiniTestUnitTestCase < MiniTest::Unit::TestCase
936
939
  @tc.assert_match pattern, 5
937
940
  end
938
941
 
942
+ def test_assert_match_matchee_to_str
943
+ @assertion_count = 2
944
+
945
+ obj = Object.new
946
+ def obj.to_str; "blah" end
947
+
948
+ @tc.assert_match "blah", obj
949
+ end
950
+
939
951
  def test_assert_match_object_triggered
940
952
  @assertion_count = 2
941
953
 
@@ -1454,7 +1466,7 @@ FILE:LINE:in `test_assert_raises_triggered_subclass'
1454
1466
  @tc.refute_match(/\d+/, "blah blah blah")
1455
1467
  end
1456
1468
 
1457
- def test_refute_match_object
1469
+ def test_refute_match_matcher_object
1458
1470
  @assertion_count = 2
1459
1471
  @tc.refute_match Object.new, 5 # default #=~ returns false
1460
1472
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest
3
3
  version: !ruby/object:Gem::Version
4
- hash: 61
4
+ hash: 7
5
5
  prerelease:
6
6
  segments:
7
- - 2
8
- - 12
9
- - 1
10
- version: 2.12.1
7
+ - 3
8
+ - 0
9
+ - 0
10
+ version: 3.0.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Ryan Davis
@@ -36,7 +36,7 @@ cert_chain:
36
36
  FBHgymkyj/AOSqKRIpXPhjC6
37
37
  -----END CERTIFICATE-----
38
38
 
39
- date: 2012-04-11 00:00:00 Z
39
+ date: 2012-05-09 00:00:00 Z
40
40
  dependencies:
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rdoc
@@ -96,8 +96,8 @@ description: |-
96
96
  co-worker doesn't replace your linear algorithm with an exponential
97
97
  one!
98
98
 
99
- minitest/mock by Steven Baker, is a beautifully tiny mock object
100
- framework.
99
+ minitest/mock by Steven Baker, is a beautifully tiny mock (and stub)
100
+ object framework.
101
101
 
102
102
  minitest/pride shows pride in testing and adds coloring to your test
103
103
  output. I guess it is an example of how to write IO pipes too. :P
@@ -135,11 +135,11 @@ files:
135
135
  - lib/minitest/pride.rb
136
136
  - lib/minitest/spec.rb
137
137
  - lib/minitest/unit.rb
138
- - test/metametameta.rb
139
- - test/test_minitest_benchmark.rb
140
- - test/test_minitest_mock.rb
141
- - test/test_minitest_spec.rb
142
- - test/test_minitest_unit.rb
138
+ - test/minitest/metametameta.rb
139
+ - test/minitest/test_minitest_benchmark.rb
140
+ - test/minitest/test_minitest_mock.rb
141
+ - test/minitest/test_minitest_spec.rb
142
+ - test/minitest/test_minitest_unit.rb
143
143
  - .gemtest
144
144
  homepage: https://github.com/seattlerb/minitest
145
145
  licenses: []
@@ -176,7 +176,7 @@ signing_key:
176
176
  specification_version: 3
177
177
  summary: minitest provides a complete suite of testing facilities supporting TDD, BDD, mocking, and benchmarking
178
178
  test_files:
179
- - test/test_minitest_benchmark.rb
180
- - test/test_minitest_mock.rb
181
- - test/test_minitest_spec.rb
182
- - test/test_minitest_unit.rb
179
+ - test/minitest/test_minitest_benchmark.rb
180
+ - test/minitest/test_minitest_mock.rb
181
+ - test/minitest/test_minitest_spec.rb
182
+ - test/minitest/test_minitest_unit.rb
metadata.gz.sig CHANGED
@@ -1,2 +1,3 @@
1
- c'i @@����m%����t#�A�n%.}�$Δ��8Җ��d�S��a��p�������;�0B<4w������f<
2
- i�½��N…���\�t,���cY�c��?k!1rD��|C��
1
+ ���ܘJE� �$�3�l��#aTW�Hob�>� $MZ�3 ڔ#?�2��J1��T
2
+ GaW:��6r��kס�F=��,�쏎�5��:��"B� ��d�
3
+ i!a,`DӰ����']��I� x�K�:�j&(h���85P ��"�ⵡC���(�>x0)��Id�P �s���FG���*�<E�p�}r��}< ��?3P�H9[LG