test-unit 2.4.4 → 2.4.5
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/test/unit/assertions.rb +61 -39
- data/lib/test/unit/version.rb +1 -1
- data/test/test-assertions.rb +195 -169
- metadata +8 -8
data/lib/test/unit/assertions.rb
CHANGED
@@ -86,7 +86,7 @@ module Test
|
|
86
86
|
end
|
87
87
|
|
88
88
|
##
|
89
|
-
# Passes if +expected+ == +actual
|
89
|
+
# Passes if +expected+ == +actual+.
|
90
90
|
#
|
91
91
|
# Note that the ordering of arguments is important, since a helpful
|
92
92
|
# error message is generated when this one fails that tells you the
|
@@ -118,11 +118,7 @@ EOT
|
|
118
118
|
begin
|
119
119
|
assert_block(full_message) { expected == actual }
|
120
120
|
rescue AssertionFailedError => failure
|
121
|
-
failure
|
122
|
-
failure.actual = actual
|
123
|
-
failure.inspected_expected = AssertionMessage.convert(expected)
|
124
|
-
failure.inspected_actual = AssertionMessage.convert(actual)
|
125
|
-
failure.user_message = message
|
121
|
+
_set_failed_information(failure, expected, actual, message)
|
126
122
|
raise failure # For JRuby. :<
|
127
123
|
end
|
128
124
|
end
|
@@ -149,11 +145,19 @@ EOT
|
|
149
145
|
assert_expected_exception = Proc.new do |*_args|
|
150
146
|
message, assert_exception_helper, actual_exception = _args
|
151
147
|
expected = assert_exception_helper.expected_exceptions
|
148
|
+
diff = AssertionMessage.delayed_diff(expected, actual_exception)
|
152
149
|
full_message = build_message(message,
|
153
|
-
"<?> exception expected but was\n
|
154
|
-
expected, actual_exception)
|
155
|
-
|
156
|
-
|
150
|
+
"<?> exception expected but was\n<?>.?",
|
151
|
+
expected, actual_exception, diff)
|
152
|
+
begin
|
153
|
+
assert_block(full_message) do
|
154
|
+
expected == [] or
|
155
|
+
assert_exception_helper.expected?(actual_exception)
|
156
|
+
end
|
157
|
+
rescue AssertionFailedError => failure
|
158
|
+
_set_failed_information(failure, expected, actual_exception,
|
159
|
+
message)
|
160
|
+
raise failure # For JRuby. :<
|
157
161
|
end
|
158
162
|
end
|
159
163
|
_assert_raise(assert_expected_exception, *args, &block)
|
@@ -183,7 +187,7 @@ EOT
|
|
183
187
|
expected = assert_exception_helper.expected_exceptions
|
184
188
|
full_message = build_message(message,
|
185
189
|
"<?> family exception expected " +
|
186
|
-
"but was\n
|
190
|
+
"but was\n<?>.",
|
187
191
|
expected, actual_exception)
|
188
192
|
assert_block(full_message) do
|
189
193
|
assert_exception_helper.expected?(actual_exception, :kind_of?)
|
@@ -1423,6 +1427,15 @@ EOT
|
|
1423
1427
|
end
|
1424
1428
|
end
|
1425
1429
|
|
1430
|
+
private
|
1431
|
+
def _set_failed_information(failure, expected, actual, user_message)
|
1432
|
+
failure.expected = expected
|
1433
|
+
failure.actual = actual
|
1434
|
+
failure.inspected_expected = AssertionMessage.convert(expected)
|
1435
|
+
failure.inspected_actual = AssertionMessage.convert(actual)
|
1436
|
+
failure.user_message = user_message
|
1437
|
+
end
|
1438
|
+
|
1426
1439
|
class AssertionMessage
|
1427
1440
|
@use_pp = true
|
1428
1441
|
class << self
|
@@ -1515,30 +1528,22 @@ EOT
|
|
1515
1528
|
end
|
1516
1529
|
|
1517
1530
|
def convert(object)
|
1518
|
-
|
1519
|
-
|
1520
|
-
|
1521
|
-
|
1522
|
-
|
1523
|
-
|
1524
|
-
|
1525
|
-
---------------
|
1526
|
-
EOM
|
1527
|
-
else
|
1528
|
-
inspector = Inspector.new(object)
|
1529
|
-
if use_pp
|
1531
|
+
if object.is_a?(Exception)
|
1532
|
+
object = AssertExceptionHelper::WrappedException.new(object)
|
1533
|
+
end
|
1534
|
+
inspector = Inspector.new(object)
|
1535
|
+
if use_pp
|
1536
|
+
begin
|
1537
|
+
require 'pp' unless defined?(PP)
|
1530
1538
|
begin
|
1531
|
-
|
1532
|
-
|
1533
|
-
return PP.pp(inspector, '').chomp
|
1534
|
-
rescue NameError
|
1535
|
-
end
|
1536
|
-
rescue LoadError
|
1537
|
-
self.use_pp = false
|
1539
|
+
return PP.pp(inspector, '').chomp
|
1540
|
+
rescue NameError
|
1538
1541
|
end
|
1542
|
+
rescue LoadError
|
1543
|
+
self.use_pp = false
|
1539
1544
|
end
|
1540
|
-
inspector.inspect
|
1541
1545
|
end
|
1546
|
+
inspector.inspect
|
1542
1547
|
end
|
1543
1548
|
end
|
1544
1549
|
|
@@ -1550,6 +1555,19 @@ EOM
|
|
1550
1555
|
inspected_objects[object.object_id] ||=
|
1551
1556
|
new(object, inspected_objects)
|
1552
1557
|
end
|
1558
|
+
|
1559
|
+
@@inspector_classes = []
|
1560
|
+
def inspector_classes
|
1561
|
+
@@inspector_classes
|
1562
|
+
end
|
1563
|
+
|
1564
|
+
def register_inspector_class(inspector_class)
|
1565
|
+
@@inspector_classes << inspector_class
|
1566
|
+
end
|
1567
|
+
|
1568
|
+
def unregister_inspector_class(inspector_class)
|
1569
|
+
@@inspector_classes.delete(inspector_class)
|
1570
|
+
end
|
1553
1571
|
end
|
1554
1572
|
|
1555
1573
|
attr_reader :object
|
@@ -1583,17 +1601,18 @@ EOM
|
|
1583
1601
|
|
1584
1602
|
private
|
1585
1603
|
def inspect_target
|
1586
|
-
|
1587
|
-
|
1588
|
-
|
1589
|
-
|
1590
|
-
else
|
1591
|
-
@object
|
1604
|
+
self.class.inspector_classes.each do |inspector_class|
|
1605
|
+
if inspector_class.target?(@object)
|
1606
|
+
return inspector_class.new(@object, @inspected_objects)
|
1607
|
+
end
|
1592
1608
|
end
|
1609
|
+
@object
|
1593
1610
|
end
|
1594
1611
|
end
|
1595
1612
|
|
1596
1613
|
class HashInspector
|
1614
|
+
Inspector.register_inspector_class(self)
|
1615
|
+
|
1597
1616
|
class << self
|
1598
1617
|
def target?(object)
|
1599
1618
|
object.is_a?(Hash) or object == ENV
|
@@ -1646,6 +1665,8 @@ EOM
|
|
1646
1665
|
end
|
1647
1666
|
|
1648
1667
|
class ArrayInspector
|
1668
|
+
Inspector.register_inspector_class(self)
|
1669
|
+
|
1649
1670
|
class << self
|
1650
1671
|
def target?(object)
|
1651
1672
|
object.is_a?(Array)
|
@@ -1761,7 +1782,7 @@ EOM
|
|
1761
1782
|
def to_s
|
1762
1783
|
message_parts = []
|
1763
1784
|
if (@head)
|
1764
|
-
head = @head.to_s
|
1785
|
+
head = @head.to_s
|
1765
1786
|
unless(head.empty?)
|
1766
1787
|
message_parts << add_period(head)
|
1767
1788
|
end
|
@@ -1774,13 +1795,14 @@ EOM
|
|
1774
1795
|
|
1775
1796
|
class AssertExceptionHelper
|
1776
1797
|
class WrappedException
|
1798
|
+
attr_reader :exception
|
1777
1799
|
def initialize(exception)
|
1778
1800
|
@exception = exception
|
1779
1801
|
end
|
1780
1802
|
|
1781
1803
|
def inspect
|
1782
1804
|
if default_inspect?
|
1783
|
-
"#{@exception.class.inspect}(
|
1805
|
+
"#{@exception.class.inspect}(<#{@exception.message}>)"
|
1784
1806
|
else
|
1785
1807
|
@exception.inspect
|
1786
1808
|
end
|
data/lib/test/unit/version.rb
CHANGED
data/test/test-assertions.rb
CHANGED
@@ -10,18 +10,16 @@ require 'test/unit'
|
|
10
10
|
module Test
|
11
11
|
module Unit
|
12
12
|
module AssertionCheckable
|
13
|
-
backtrace_pre = "---Backtrace---"
|
14
|
-
backtrace_post = "---------------"
|
15
|
-
BACKTRACE_RE = /#{backtrace_pre}\n.+\n#{backtrace_post}/m
|
16
|
-
|
17
13
|
private
|
18
14
|
def check(value, message="")
|
19
15
|
add_assertion
|
20
16
|
raise AssertionFailedError.new(message) unless value
|
21
17
|
end
|
22
18
|
|
23
|
-
def check_assertions(expect_fail,
|
24
|
-
|
19
|
+
def check_assertions(expect_fail, options={})
|
20
|
+
expected_message = options[:expected_message]
|
21
|
+
actual_message_normalizer = options[:actual_message_normalizer]
|
22
|
+
return_value_expected = options[:return_value_expected]
|
25
23
|
@actual_assertion_count = 0
|
26
24
|
failed = true
|
27
25
|
actual_message = nil
|
@@ -48,14 +46,17 @@ module Test
|
|
48
46
|
check(1 == @actual_assertion_count, message)
|
49
47
|
|
50
48
|
if expect_fail
|
49
|
+
if actual_message_normalizer
|
50
|
+
actual_message = actual_message_normalizer.call(actual_message)
|
51
|
+
end
|
51
52
|
case expected_message
|
52
53
|
when String
|
53
|
-
check(
|
54
|
+
check(expected_message == actual_message,
|
54
55
|
"Should have the correct message.\n" +
|
55
56
|
"<#{expected_message.inspect}> expected but was\n" +
|
56
57
|
"<#{actual_message.inspect}>")
|
57
58
|
when Regexp
|
58
|
-
check(
|
59
|
+
check(expected_message =~ actual_message,
|
59
60
|
"The message should match correctly.\n" +
|
60
61
|
"</#{expected_message.source}/> expected to match\n" +
|
61
62
|
"<#{actual_message.inspect}>")
|
@@ -76,11 +77,26 @@ module Test
|
|
76
77
|
end
|
77
78
|
|
78
79
|
def check_nothing_fails(return_value_expected=false, &proc)
|
79
|
-
check_assertions(false,
|
80
|
+
check_assertions(false,
|
81
|
+
{:expected_message => nil,
|
82
|
+
:return_value_expected => return_value_expected},
|
83
|
+
&proc)
|
80
84
|
end
|
81
85
|
|
82
|
-
def
|
83
|
-
check_assertions(true,
|
86
|
+
def check_fail(expected_message, options={}, &proc)
|
87
|
+
check_assertions(true,
|
88
|
+
options.merge(:expected_message => expected_message),
|
89
|
+
&proc)
|
90
|
+
end
|
91
|
+
|
92
|
+
def check_fail_exception(expected_message, options={}, &proc)
|
93
|
+
normalizer = lambda do |actual_message|
|
94
|
+
actual_message.gsub(/(^[^:\n]+:\d+:.+\n?)+\z/, "")
|
95
|
+
end
|
96
|
+
check_assertions(true,
|
97
|
+
options.merge(:expected_message => expected_message,
|
98
|
+
:actual_message_normalizer => normalizer),
|
99
|
+
&proc)
|
84
100
|
end
|
85
101
|
|
86
102
|
def inspect_tag(tag)
|
@@ -121,10 +137,10 @@ module Test
|
|
121
137
|
check_nothing_fails {
|
122
138
|
assert_block("successful assert_block") {true}
|
123
139
|
}
|
124
|
-
|
140
|
+
check_fail("assert_block failed.") {
|
125
141
|
assert_block {false}
|
126
142
|
}
|
127
|
-
|
143
|
+
check_fail("failed assert_block") {
|
128
144
|
assert_block("failed assert_block") {false}
|
129
145
|
}
|
130
146
|
end
|
@@ -147,7 +163,7 @@ diff:
|
|
147
163
|
+ string2
|
148
164
|
? ^
|
149
165
|
EOM
|
150
|
-
|
166
|
+
check_fail(message) {
|
151
167
|
assert_equal("string1", "string2")
|
152
168
|
}
|
153
169
|
|
@@ -162,7 +178,7 @@ diff:
|
|
162
178
|
+ string2
|
163
179
|
? ^
|
164
180
|
EOM
|
165
|
-
|
181
|
+
check_fail(message) {
|
166
182
|
assert_equal("string1", "string2", "failed assert_equal")
|
167
183
|
}
|
168
184
|
|
@@ -175,7 +191,7 @@ diff:
|
|
175
191
|
? - -
|
176
192
|
+ 111111
|
177
193
|
EOM
|
178
|
-
|
194
|
+
check_fail(message) do
|
179
195
|
assert_equal("111111", 111111)
|
180
196
|
end
|
181
197
|
end
|
@@ -216,7 +232,7 @@ folded diff:
|
|
216
232
|
? ^^^^^^^^^
|
217
233
|
898123456789
|
218
234
|
EOM
|
219
|
-
|
235
|
+
check_fail(message) do
|
220
236
|
assert_equal(expected, actual)
|
221
237
|
end
|
222
238
|
end
|
@@ -226,7 +242,7 @@ EOM
|
|
226
242
|
<1> expected but was
|
227
243
|
<2>.
|
228
244
|
EOM
|
229
|
-
|
245
|
+
check_fail(message) do
|
230
246
|
assert_equal(1, 2)
|
231
247
|
end
|
232
248
|
end
|
@@ -238,7 +254,7 @@ EOM
|
|
238
254
|
<#{now.inspect}> expected but was
|
239
255
|
<#{now.inspect}>.
|
240
256
|
EOM
|
241
|
-
|
257
|
+
check_fail(message) do
|
242
258
|
assert_equal(now, now_without_usec)
|
243
259
|
end
|
244
260
|
end
|
@@ -253,7 +269,7 @@ diff:
|
|
253
269
|
- a
|
254
270
|
- b
|
255
271
|
EOM
|
256
|
-
|
272
|
+
check_fail(message) do
|
257
273
|
assert_equal("a\nb", "x")
|
258
274
|
end
|
259
275
|
end
|
@@ -274,7 +290,7 @@ folded diff:
|
|
274
290
|
#{(["- " + ("x" * 78)] * 12).join("\n")}
|
275
291
|
- #{"x" * 61}
|
276
292
|
EOM
|
277
|
-
|
293
|
+
check_fail(message) do
|
278
294
|
assert_equal("a\n" + "x" * 997, "x")
|
279
295
|
end
|
280
296
|
|
@@ -282,7 +298,7 @@ EOM
|
|
282
298
|
<#{("a\n" + "x" * 998).inspect}> expected but was
|
283
299
|
<#{"x".inspect}>.
|
284
300
|
EOM
|
285
|
-
|
301
|
+
check_fail(message) do
|
286
302
|
assert_equal("a\n" + "x" * 998, "x")
|
287
303
|
end
|
288
304
|
end
|
@@ -307,7 +323,7 @@ folded diff:
|
|
307
323
|
#{(["- " + ("x" * 78)]).join("\n")}
|
308
324
|
- #{"x" * 19}
|
309
325
|
EOM
|
310
|
-
|
326
|
+
check_fail(message) do
|
311
327
|
assert_equal("a\n" + "x" * 97, "x")
|
312
328
|
end
|
313
329
|
|
@@ -315,7 +331,7 @@ EOM
|
|
315
331
|
<#{("a\n" + "x" * 98).inspect}> expected but was
|
316
332
|
<#{"x".inspect}>.
|
317
333
|
EOM
|
318
|
-
|
334
|
+
check_fail(message) do
|
319
335
|
assert_equal("a\n" + "x" * 98, "x")
|
320
336
|
end
|
321
337
|
ensure
|
@@ -333,7 +349,7 @@ EOM
|
|
333
349
|
<#{utf8_string.inspect}>("UTF-8") expected but was
|
334
350
|
<#{ascii_8bit_string.inspect}>("ASCII-8BIT").
|
335
351
|
EOM
|
336
|
-
|
352
|
+
check_fail(message) do
|
337
353
|
assert_equal(utf8_string, ascii_8bit_string)
|
338
354
|
end
|
339
355
|
end
|
@@ -351,7 +367,7 @@ EOM
|
|
351
367
|
<{"Lisp"=>"John McCarthy", "Ruby"=>"Matz"}> expected but was
|
352
368
|
<{"Heavy"=>["C", "C++"], "LL"=>["Ruby", "Python"]}>.
|
353
369
|
EOM
|
354
|
-
|
370
|
+
check_fail(message) do
|
355
371
|
assert_equal(designers, categories)
|
356
372
|
end
|
357
373
|
end
|
@@ -371,7 +387,7 @@ diff:
|
|
371
387
|
+ {"followers"=>[{"followers"=>[{...}], "name"=>"Alice"}], "name"=>"Bob"}
|
372
388
|
? +++++++++++++++++
|
373
389
|
EOM
|
374
|
-
|
390
|
+
check_fail(message) do
|
375
391
|
assert_equal(alice, bob)
|
376
392
|
end
|
377
393
|
end
|
@@ -416,19 +432,18 @@ EOM
|
|
416
432
|
end
|
417
433
|
|
418
434
|
def test_assert_raise_fail
|
419
|
-
|
435
|
+
check_fail("<RuntimeError> exception expected but none was thrown.") do
|
420
436
|
assert_raise(RuntimeError) do
|
421
437
|
1 + 1
|
422
438
|
end
|
423
439
|
end
|
424
440
|
|
425
|
-
message = <<-EOM
|
441
|
+
message = <<-EOM.chomp
|
426
442
|
failed assert_raise.
|
427
443
|
<ArgumentError> exception expected but was
|
428
|
-
|
429
|
-
Message: <"Error">
|
444
|
+
<RuntimeError(<Error>)>.
|
430
445
|
EOM
|
431
|
-
|
446
|
+
check_fail_exception(message) do
|
432
447
|
assert_raise(ArgumentError, "failed assert_raise") do
|
433
448
|
raise "Error"
|
434
449
|
end
|
@@ -438,7 +453,7 @@ EOM
|
|
438
453
|
Should expect a class of exception, Object.
|
439
454
|
<false> is not true.
|
440
455
|
EOM
|
441
|
-
|
456
|
+
check_fail(message.chomp) do
|
442
457
|
assert_nothing_raised(Object) do
|
443
458
|
1 + 1
|
444
459
|
end
|
@@ -478,21 +493,19 @@ EOM
|
|
478
493
|
"from a successful assert_raise")
|
479
494
|
end
|
480
495
|
|
481
|
-
|
496
|
+
check_fail("<[ArgumentError, TypeError, Math, Comparable]> exception " +
|
482
497
|
"expected but none was thrown.") do
|
483
498
|
assert_raise(*rescues) do
|
484
499
|
1 + 1
|
485
500
|
end
|
486
501
|
end
|
487
502
|
|
488
|
-
message = <<-EOM
|
503
|
+
message = <<-EOM.chomp
|
489
504
|
failed assert_raise.
|
490
505
|
<[ArgumentError, TypeError]> exception expected but was
|
491
|
-
|
492
|
-
Message: <"Error">
|
506
|
+
<RuntimeError(<Error>)>.
|
493
507
|
EOM
|
494
|
-
|
495
|
-
check_fails(/\A#{message}#{BACKTRACE_RE}\z/m) do
|
508
|
+
check_fail_exception(message) do
|
496
509
|
assert_raise(ArgumentError, TypeError, "failed assert_raise") do
|
497
510
|
raise "Error"
|
498
511
|
end
|
@@ -513,25 +526,28 @@ EOM
|
|
513
526
|
"Should have returned the correct exception " +
|
514
527
|
"from a successful assert_raise")
|
515
528
|
|
516
|
-
message = <<-EOM
|
517
|
-
<RuntimeError(
|
518
|
-
|
519
|
-
|
529
|
+
message = <<-EOM.chomp
|
530
|
+
<RuntimeError(<XXX>)> exception expected but was
|
531
|
+
<RuntimeError(<Error>)>.
|
532
|
+
|
533
|
+
diff:
|
534
|
+
- RuntimeError(<XXX>)
|
535
|
+
? ^^^
|
536
|
+
+ RuntimeError(<Error>)
|
537
|
+
? ^^^^^
|
520
538
|
EOM
|
521
|
-
|
522
|
-
check_fails(/\A#{message}#{BACKTRACE_RE}\z/) do
|
539
|
+
check_fail_exception(message) do
|
523
540
|
return_value = assert_raise(RuntimeError.new("XXX")) do
|
524
541
|
raise "Error"
|
525
542
|
end
|
526
543
|
end
|
527
544
|
|
528
545
|
different_error_class = Class.new(StandardError)
|
529
|
-
message = <<-EOM
|
530
|
-
|
531
|
-
|
532
|
-
Message: <"Error">
|
546
|
+
message = <<-EOM.chomp
|
547
|
+
<#{different_error_class.inspect}(<Error>)> exception expected but was
|
548
|
+
<RuntimeError(<Error>)>.
|
533
549
|
EOM
|
534
|
-
|
550
|
+
check_fail_exception(message) do
|
535
551
|
assert_raise(different_error_class.new("Error")) do
|
536
552
|
raise "Error"
|
537
553
|
end
|
@@ -541,12 +557,11 @@ EOM
|
|
541
557
|
def different_error.inspect
|
542
558
|
"DifferentError: \"Error\""
|
543
559
|
end
|
544
|
-
message = <<-EOM
|
545
|
-
|
546
|
-
|
547
|
-
Message: <"Error">
|
560
|
+
message = <<-EOM.chomp
|
561
|
+
<DifferentError: "Error"> exception expected but was
|
562
|
+
<RuntimeError(<Error>)>.
|
548
563
|
EOM
|
549
|
-
|
564
|
+
check_fail_exception(message) do
|
550
565
|
assert_raise(different_error) do
|
551
566
|
raise "Error"
|
552
567
|
end
|
@@ -571,20 +586,20 @@ EOM
|
|
571
586
|
check_nothing_fails {
|
572
587
|
assert_instance_of(String, "string", "successful assert_instance_of")
|
573
588
|
}
|
574
|
-
|
589
|
+
check_fail(%Q{<"string"> expected to be an instance of\n<Hash> but was\n<String>.}) {
|
575
590
|
assert_instance_of(Hash, "string")
|
576
591
|
}
|
577
|
-
|
592
|
+
check_fail(%Q{failed assert_instance_of.\n<"string"> expected to be an instance of\n<Hash> but was\n<String>.}) {
|
578
593
|
assert_instance_of(Hash, "string", "failed assert_instance_of")
|
579
594
|
}
|
580
595
|
|
581
596
|
check_nothing_fails do
|
582
597
|
assert_instance_of([Fixnum, NilClass], 100)
|
583
598
|
end
|
584
|
-
|
599
|
+
check_fail(%Q{<"string"> expected to be an instance of\n[<Fixnum>, <NilClass>] but was\n<String>.}) do
|
585
600
|
assert_instance_of([Fixnum, NilClass], "string")
|
586
601
|
end
|
587
|
-
|
602
|
+
check_fail(%Q{<100> expected to be an instance of\n[<Numeric>, <NilClass>] but was\n<Fixnum>.}) do
|
588
603
|
assert_instance_of([Numeric, NilClass], 100)
|
589
604
|
end
|
590
605
|
end
|
@@ -599,10 +614,10 @@ EOM
|
|
599
614
|
check_nothing_fails {
|
600
615
|
assert_nil(nil, "successful assert_nil")
|
601
616
|
}
|
602
|
-
|
617
|
+
check_fail(%Q{<"string"> expected to be nil.}) {
|
603
618
|
assert_nil("string")
|
604
619
|
}
|
605
|
-
|
620
|
+
check_fail(%Q{failed assert_nil.\n<"string"> expected to be nil.}) {
|
606
621
|
assert_nil("string", "failed assert_nil")
|
607
622
|
}
|
608
623
|
end
|
@@ -610,8 +625,8 @@ EOM
|
|
610
625
|
def test_assert_not_nil
|
611
626
|
check_nothing_fails{assert_not_nil(false)}
|
612
627
|
check_nothing_fails{assert_not_nil(false, "message")}
|
613
|
-
|
614
|
-
|
628
|
+
check_fail("<nil> expected to not be nil."){assert_not_nil(nil)}
|
629
|
+
check_fail("message.\n<nil> expected to not be nil.") {assert_not_nil(nil, "message")}
|
615
630
|
end
|
616
631
|
|
617
632
|
def test_assert_kind_of
|
@@ -627,17 +642,17 @@ EOM
|
|
627
642
|
check_nothing_fails {
|
628
643
|
assert_kind_of(Comparable, 1)
|
629
644
|
}
|
630
|
-
|
645
|
+
check_fail(%Q{<"string"> expected to be kind_of?\n<Class> but was\n<String>.}) {
|
631
646
|
assert_kind_of(Class, "string")
|
632
647
|
}
|
633
|
-
|
648
|
+
check_fail(%Q{failed assert_kind_of.\n<"string"> expected to be kind_of?\n<Class> but was\n<String>.}) {
|
634
649
|
assert_kind_of(Class, "string", "failed assert_kind_of")
|
635
650
|
}
|
636
651
|
|
637
652
|
check_nothing_fails do
|
638
653
|
assert_kind_of([Fixnum, NilClass], 100)
|
639
654
|
end
|
640
|
-
|
655
|
+
check_fail(%Q{<"string"> expected to be kind_of?\n[<Fixnum>, <NilClass>] but was\n<String>.}) do
|
641
656
|
assert_kind_of([Fixnum, NilClass], "string")
|
642
657
|
end
|
643
658
|
end
|
@@ -655,13 +670,13 @@ EOM
|
|
655
670
|
check_nothing_fails {
|
656
671
|
assert_match(/strin./, "string", "successful assert_match")
|
657
672
|
}
|
658
|
-
|
673
|
+
check_fail(%Q{<"string"> expected to be =~\n</slin./>.}) {
|
659
674
|
assert_match(/slin./, "string")
|
660
675
|
}
|
661
|
-
|
676
|
+
check_fail(%Q{<"string"> expected to be =~\n</strin\\./>.}) {
|
662
677
|
assert_match("strin.", "string")
|
663
678
|
}
|
664
|
-
|
679
|
+
check_fail(%Q{failed assert_match.\n<"string"> expected to be =~\n</slin./>.}) {
|
665
680
|
assert_match(/slin./, "string", "failed assert_match")
|
666
681
|
}
|
667
682
|
end
|
@@ -678,10 +693,10 @@ EOM
|
|
678
693
|
assert_same(thing, thing, "successful assert_same")
|
679
694
|
}
|
680
695
|
thing2 = "thing"
|
681
|
-
|
696
|
+
check_fail(%Q{<"thing">\nwith id <#{thing.__id__}> expected to be equal? to\n<"thing">\nwith id <#{thing2.__id__}>.}) {
|
682
697
|
assert_same(thing, thing2)
|
683
698
|
}
|
684
|
-
|
699
|
+
check_fail(%Q{failed assert_same.\n<"thing">\nwith id <#{thing.__id__}> expected to be equal? to\n<"thing">\nwith id <#{thing2.__id__}>.}) {
|
685
700
|
assert_same(thing, thing2, "failed assert_same")
|
686
701
|
}
|
687
702
|
end
|
@@ -710,42 +725,55 @@ EOM
|
|
710
725
|
rescue ZeroDivisionError
|
711
726
|
end
|
712
727
|
}
|
713
|
-
|
728
|
+
check_fail("Should expect a class of exception, Object.\n<false> is not true.") {
|
714
729
|
assert_nothing_raised(Object) {
|
715
730
|
1 + 1
|
716
731
|
}
|
717
732
|
}
|
718
|
-
|
733
|
+
expected_message = <<-EOM.chomp
|
734
|
+
Exception raised:
|
735
|
+
RuntimeError(<Error>)
|
736
|
+
EOM
|
737
|
+
check_fail_exception(expected_message) {
|
719
738
|
assert_nothing_raised {
|
720
739
|
raise "Error"
|
721
740
|
}
|
722
741
|
}
|
723
|
-
|
742
|
+
expected_message = <<-EOM.chomp
|
743
|
+
failed assert_nothing_raised.
|
744
|
+
Exception raised:
|
745
|
+
RuntimeError(<Error>)
|
746
|
+
EOM
|
747
|
+
check_fail_exception(expected_message) {
|
724
748
|
assert_nothing_raised("failed assert_nothing_raised") {
|
725
749
|
raise "Error"
|
726
750
|
}
|
727
751
|
}
|
728
|
-
|
752
|
+
expected_message = <<-EOM.chomp
|
753
|
+
Exception raised:
|
754
|
+
RuntimeError(<Error>)
|
755
|
+
EOM
|
756
|
+
check_fail_exception(expected_message) {
|
729
757
|
assert_nothing_raised(StandardError, RuntimeError) {
|
730
758
|
raise "Error"
|
731
759
|
}
|
732
760
|
}
|
733
|
-
|
761
|
+
check_fail("Failure.") do
|
734
762
|
assert_nothing_raised do
|
735
763
|
flunk("Failure")
|
736
764
|
end
|
737
765
|
end
|
738
766
|
end
|
739
|
-
|
767
|
+
|
740
768
|
def test_flunk
|
741
|
-
|
769
|
+
check_fail("Flunked.") {
|
742
770
|
flunk
|
743
771
|
}
|
744
|
-
|
772
|
+
check_fail("flunk message.") {
|
745
773
|
flunk("flunk message")
|
746
774
|
}
|
747
775
|
end
|
748
|
-
|
776
|
+
|
749
777
|
def test_assert_not_same
|
750
778
|
thing = "thing"
|
751
779
|
thing2 = "thing"
|
@@ -755,10 +783,10 @@ EOM
|
|
755
783
|
check_nothing_fails {
|
756
784
|
assert_not_same(thing, thing2, "message")
|
757
785
|
}
|
758
|
-
|
786
|
+
check_fail(%Q{<"thing">\nwith id <#{thing.__id__}> expected to not be equal? to\n<"thing">\nwith id <#{thing.__id__}>.}) {
|
759
787
|
assert_not_same(thing, thing)
|
760
788
|
}
|
761
|
-
|
789
|
+
check_fail(%Q{message.\n<"thing">\nwith id <#{thing.__id__}> expected to not be equal? to\n<"thing">\nwith id <#{thing.__id__}>.}) {
|
762
790
|
assert_not_same(thing, thing, "message")
|
763
791
|
}
|
764
792
|
end
|
@@ -770,10 +798,10 @@ EOM
|
|
770
798
|
check_nothing_fails {
|
771
799
|
assert_not_equal("string1", "string2", "message")
|
772
800
|
}
|
773
|
-
|
801
|
+
check_fail(%Q{<"string"> expected to be != to\n<"string">.}) {
|
774
802
|
assert_not_equal("string", "string")
|
775
803
|
}
|
776
|
-
|
804
|
+
check_fail(%Q{message.\n<"string"> expected to be != to\n<"string">.}) {
|
777
805
|
assert_not_equal("string", "string", "message")
|
778
806
|
}
|
779
807
|
end
|
@@ -791,7 +819,7 @@ EOM
|
|
791
819
|
end
|
792
820
|
|
793
821
|
def test_assert_not_match_fail_not_regexp
|
794
|
-
|
822
|
+
check_fail("<REGEXP> in assert_not_match(<REGEXP>, ...) " +
|
795
823
|
"should be a Regexp.\n" +
|
796
824
|
"<\"asdf\"> expected to be an instance of\n" +
|
797
825
|
"<Regexp> but was\n" +
|
@@ -801,14 +829,14 @@ EOM
|
|
801
829
|
end
|
802
830
|
|
803
831
|
def test_assert_not_match_fail_match
|
804
|
-
|
832
|
+
check_fail("</string/> expected to not match\n" +
|
805
833
|
"<\"string\">.") do
|
806
834
|
assert_not_match(/string/, "string")
|
807
835
|
end
|
808
836
|
end
|
809
837
|
|
810
838
|
def test_assert_not_match_fail_match_with_message
|
811
|
-
|
839
|
+
check_fail("message.\n" +
|
812
840
|
"</string/> expected to not match\n" +
|
813
841
|
"<\"string\">.") do
|
814
842
|
assert_not_match(/string/, "string", "message")
|
@@ -818,13 +846,13 @@ EOM
|
|
818
846
|
def test_assert_no_match
|
819
847
|
check_nothing_fails{assert_no_match(/sling/, "string")}
|
820
848
|
check_nothing_fails{assert_no_match(/sling/, "string", "message")}
|
821
|
-
|
849
|
+
check_fail(%Q{The first argument to assert_no_match should be a Regexp.\n<"asdf"> expected to be an instance of\n<Regexp> but was\n<String>.}) do
|
822
850
|
assert_no_match("asdf", "asdf")
|
823
851
|
end
|
824
|
-
|
852
|
+
check_fail(%Q{</string/> expected to not match\n<"string">.}) do
|
825
853
|
assert_no_match(/string/, "string")
|
826
854
|
end
|
827
|
-
|
855
|
+
check_fail(%Q{message.\n</string/> expected to not match\n<"string">.}) do
|
828
856
|
assert_no_match(/string/, "string", "message")
|
829
857
|
end
|
830
858
|
end
|
@@ -837,14 +865,14 @@ EOM
|
|
837
865
|
end
|
838
866
|
|
839
867
|
tag = :thing2
|
840
|
-
|
868
|
+
check_fail("message.\n" +
|
841
869
|
"<:thing> expected to be thrown but\n" +
|
842
870
|
"<#{inspect_tag(tag)}> was thrown.") do
|
843
871
|
assert_throw(:thing, "message") do
|
844
872
|
throw :thing2
|
845
873
|
end
|
846
874
|
end
|
847
|
-
|
875
|
+
check_fail("message.\n" +
|
848
876
|
"<:thing> should have been thrown.") do
|
849
877
|
assert_throw(:thing, "message") do
|
850
878
|
1 + 1
|
@@ -861,7 +889,7 @@ EOM
|
|
861
889
|
|
862
890
|
tag = :thing
|
863
891
|
inspected = inspect_tag(tag)
|
864
|
-
|
892
|
+
check_fail("message.\n" +
|
865
893
|
"<#{inspected}> was thrown when nothing was expected.") do
|
866
894
|
assert_nothing_thrown("message") do
|
867
895
|
throw tag
|
@@ -873,10 +901,10 @@ EOM
|
|
873
901
|
check_nothing_fails {
|
874
902
|
assert_operator("thing", :==, "thing", "message")
|
875
903
|
}
|
876
|
-
|
904
|
+
check_fail(%Q{<0.15>\ngiven as the operator for #assert_operator must be a Symbol or #respond_to?(:to_str).}) do
|
877
905
|
assert_operator("thing", 0.15, "thing")
|
878
906
|
end
|
879
|
-
|
907
|
+
check_fail(%Q{message.\n<"thing1"> expected to be\n==\n<"thing2">.}) {
|
880
908
|
assert_operator("thing1", :==, "thing2", "message")
|
881
909
|
}
|
882
910
|
end
|
@@ -888,11 +916,11 @@ EOM
|
|
888
916
|
check_nothing_fails {
|
889
917
|
assert_respond_to("thing", "to_s", "message")
|
890
918
|
}
|
891
|
-
|
919
|
+
check_fail("<0.15>.kind_of?(Symbol) or\n" +
|
892
920
|
"<0.15>.respond_to?(:to_str) expected") {
|
893
921
|
assert_respond_to("thing", 0.15)
|
894
922
|
}
|
895
|
-
|
923
|
+
check_fail("message.\n" +
|
896
924
|
"<:symbol>.respond_to?(:nonexistence) expected\n" +
|
897
925
|
"(Class: <Symbol>)") {
|
898
926
|
assert_respond_to(:symbol, :nonexistence, "message")
|
@@ -912,14 +940,14 @@ EOM
|
|
912
940
|
end
|
913
941
|
|
914
942
|
def test_assert_not_respond_to_fail_number
|
915
|
-
|
943
|
+
check_fail("<0.15>.kind_of?(Symbol) or\n" +
|
916
944
|
"<0.15>.respond_to?(:to_str) expected") do
|
917
945
|
assert_respond_to("thing", 0.15)
|
918
946
|
end
|
919
947
|
end
|
920
948
|
|
921
949
|
def tset_assert_not_respond_to_fail_existence
|
922
|
-
|
950
|
+
check_fail("message.\n" +
|
923
951
|
"!<:symbol>.respond_to?(:to_s) expected\n" +
|
924
952
|
"(Class: <Symbol>)") do
|
925
953
|
assert_respond_to(:symbol, :to_s, "message")
|
@@ -945,7 +973,7 @@ message.
|
|
945
973
|
<return_argument(*[false, "bogus"])> with a true value but was
|
946
974
|
<false>.
|
947
975
|
EOM
|
948
|
-
|
976
|
+
check_fail(expected_message.chomp) do
|
949
977
|
assert_send([object, :return_argument, false, "bogus"], "message")
|
950
978
|
end
|
951
979
|
end
|
@@ -972,15 +1000,15 @@ EOM
|
|
972
1000
|
assert_boolean(false)
|
973
1001
|
end
|
974
1002
|
|
975
|
-
|
1003
|
+
check_fail("<true> or <false> expected but was\n<1>") do
|
976
1004
|
assert_boolean(1)
|
977
1005
|
end
|
978
1006
|
|
979
|
-
|
1007
|
+
check_fail("<true> or <false> expected but was\n<nil>") do
|
980
1008
|
assert_boolean(nil)
|
981
1009
|
end
|
982
1010
|
|
983
|
-
|
1011
|
+
check_fail("message.\n<true> or <false> expected but was\n<\"XXX\">") do
|
984
1012
|
assert_boolean("XXX", "message")
|
985
1013
|
end
|
986
1014
|
end
|
@@ -990,15 +1018,15 @@ EOM
|
|
990
1018
|
assert_true(true)
|
991
1019
|
end
|
992
1020
|
|
993
|
-
|
1021
|
+
check_fail("<true> expected but was\n<false>") do
|
994
1022
|
assert_true(false)
|
995
1023
|
end
|
996
1024
|
|
997
|
-
|
1025
|
+
check_fail("<true> expected but was\n<1>") do
|
998
1026
|
assert_true(1)
|
999
1027
|
end
|
1000
1028
|
|
1001
|
-
|
1029
|
+
check_fail("message.\n<true> expected but was\n<nil>") do
|
1002
1030
|
assert_true(nil, "message")
|
1003
1031
|
end
|
1004
1032
|
end
|
@@ -1008,15 +1036,15 @@ EOM
|
|
1008
1036
|
assert_false(false)
|
1009
1037
|
end
|
1010
1038
|
|
1011
|
-
|
1039
|
+
check_fail("<false> expected but was\n<true>") do
|
1012
1040
|
assert_false(true)
|
1013
1041
|
end
|
1014
1042
|
|
1015
|
-
|
1043
|
+
check_fail("<false> expected but was\n<nil>") do
|
1016
1044
|
assert_false(nil)
|
1017
1045
|
end
|
1018
1046
|
|
1019
|
-
|
1047
|
+
check_fail("message.\n<false> expected but was\n<:false>") do
|
1020
1048
|
assert_false(:false, "message")
|
1021
1049
|
end
|
1022
1050
|
end
|
@@ -1043,7 +1071,7 @@ EOM
|
|
1043
1071
|
<15> expected less than
|
1044
1072
|
<10>.
|
1045
1073
|
EOM
|
1046
|
-
|
1074
|
+
check_fail(expected_message.chomp) do
|
1047
1075
|
assert_compare(15, "<", 10)
|
1048
1076
|
end
|
1049
1077
|
|
@@ -1052,7 +1080,7 @@ EOM
|
|
1052
1080
|
<15> expected less than or equal to
|
1053
1081
|
<10>.
|
1054
1082
|
EOM
|
1055
|
-
|
1083
|
+
check_fail(expected_message.chomp) do
|
1056
1084
|
assert_compare(15, "<=", 10)
|
1057
1085
|
end
|
1058
1086
|
|
@@ -1061,7 +1089,7 @@ EOM
|
|
1061
1089
|
<10> expected greater than
|
1062
1090
|
<15>.
|
1063
1091
|
EOM
|
1064
|
-
|
1092
|
+
check_fail(expected_message.chomp) do
|
1065
1093
|
assert_compare(10, ">", 15)
|
1066
1094
|
end
|
1067
1095
|
|
@@ -1070,7 +1098,7 @@ EOM
|
|
1070
1098
|
<10> expected greater than or equal to
|
1071
1099
|
<15>.
|
1072
1100
|
EOM
|
1073
|
-
|
1101
|
+
check_fail(expected_message.chomp) do
|
1074
1102
|
assert_compare(10, ">=", 15)
|
1075
1103
|
end
|
1076
1104
|
end
|
@@ -1082,7 +1110,7 @@ EOM
|
|
1082
1110
|
end
|
1083
1111
|
end
|
1084
1112
|
|
1085
|
-
|
1113
|
+
check_fail("Failed assertion was expected.") do
|
1086
1114
|
assert_fail_assertion do
|
1087
1115
|
end
|
1088
1116
|
end
|
@@ -1111,7 +1139,7 @@ EOM
|
|
1111
1139
|
<"Expected message"> exception message expected but was
|
1112
1140
|
<"Actual message">.
|
1113
1141
|
EOM
|
1114
|
-
|
1142
|
+
check_fail(expected_message.chomp) do
|
1115
1143
|
assert_raise_message("Expected message") do
|
1116
1144
|
raise "Actual message"
|
1117
1145
|
end
|
@@ -1120,7 +1148,7 @@ EOM
|
|
1120
1148
|
expected_message = <<-EOM
|
1121
1149
|
<"Expected message"> exception message expected but none was thrown.
|
1122
1150
|
EOM
|
1123
|
-
|
1151
|
+
check_fail(expected_message.chomp) do
|
1124
1152
|
assert_raise_message("Expected message") do
|
1125
1153
|
end
|
1126
1154
|
end
|
@@ -1133,13 +1161,11 @@ EOM
|
|
1133
1161
|
end
|
1134
1162
|
end
|
1135
1163
|
|
1136
|
-
expected_message = <<-EOM
|
1164
|
+
expected_message = <<-EOM.chomp
|
1137
1165
|
<SystemCallError> family exception expected but was
|
1138
|
-
|
1139
|
-
Message: <"XXX">
|
1140
|
-
---Backtrace---
|
1166
|
+
<RuntimeError(<XXX>)>.
|
1141
1167
|
EOM
|
1142
|
-
|
1168
|
+
check_fail_exception(expected_message) do
|
1143
1169
|
assert_raise_kind_of(SystemCallError) do
|
1144
1170
|
raise RuntimeError, "XXX"
|
1145
1171
|
end
|
@@ -1155,7 +1181,7 @@ EOM
|
|
1155
1181
|
assert_const_defined(Test, "Unit")
|
1156
1182
|
end
|
1157
1183
|
|
1158
|
-
|
1184
|
+
check_fail("<Test>.const_defined?(<:Nonexistence>) expected.") do
|
1159
1185
|
assert_const_defined(Test, :Nonexistence)
|
1160
1186
|
end
|
1161
1187
|
end
|
@@ -1165,11 +1191,11 @@ EOM
|
|
1165
1191
|
assert_not_const_defined(Test, :Nonexistence)
|
1166
1192
|
end
|
1167
1193
|
|
1168
|
-
|
1194
|
+
check_fail("!<Test>.const_defined?(<:Unit>) expected.") do
|
1169
1195
|
assert_not_const_defined(Test, :Unit)
|
1170
1196
|
end
|
1171
1197
|
|
1172
|
-
|
1198
|
+
check_fail("!<Test>.const_defined?(<\"Unit\">) expected.") do
|
1173
1199
|
assert_not_const_defined(Test, "Unit")
|
1174
1200
|
end
|
1175
1201
|
end
|
@@ -1179,11 +1205,11 @@ EOM
|
|
1179
1205
|
assert_predicate([], :empty?)
|
1180
1206
|
end
|
1181
1207
|
|
1182
|
-
|
1208
|
+
check_fail("<[1]>.empty? is true value expected but was\n<false>") do
|
1183
1209
|
assert_predicate([1], :empty?)
|
1184
1210
|
end
|
1185
1211
|
|
1186
|
-
|
1212
|
+
check_fail("<[1]>.respond_to?(:nonexistent?) expected\n" +
|
1187
1213
|
"(Class: <Array>)") do
|
1188
1214
|
assert_predicate([1], :nonexistent?)
|
1189
1215
|
end
|
@@ -1194,11 +1220,11 @@ EOM
|
|
1194
1220
|
assert_not_predicate([1], :empty?)
|
1195
1221
|
end
|
1196
1222
|
|
1197
|
-
|
1223
|
+
check_fail("<[]>.empty? is false value expected but was\n<true>") do
|
1198
1224
|
assert_not_predicate([], :empty?)
|
1199
1225
|
end
|
1200
1226
|
|
1201
|
-
|
1227
|
+
check_fail("<[]>.respond_to?(:nonexistent?) expected\n" +
|
1202
1228
|
"(Class: <Array>)") do
|
1203
1229
|
assert_not_predicate([], :nonexistent?)
|
1204
1230
|
end
|
@@ -1223,18 +1249,18 @@ EOM
|
|
1223
1249
|
assert_alias_method(object, :original_method, :alias_method)
|
1224
1250
|
end
|
1225
1251
|
|
1226
|
-
|
1252
|
+
check_fail("<#{object.method(:other).inspect}> is alias of\n" +
|
1227
1253
|
"<#{object.method(:original_method).inspect}> expected") do
|
1228
1254
|
assert_alias_method(object, :other, :original_method)
|
1229
1255
|
end
|
1230
1256
|
|
1231
1257
|
inspected_object = AssertionMessage.convert(object)
|
1232
|
-
|
1258
|
+
check_fail("<#{inspected_object}>.nonexistent doesn't exist\n" +
|
1233
1259
|
"(Class: <Object>)") do
|
1234
1260
|
assert_alias_method(object, :nonexistent, :original_method)
|
1235
1261
|
end
|
1236
1262
|
|
1237
|
-
|
1263
|
+
check_fail("<#{inspected_object}>.nonexistent doesn't exist\n" +
|
1238
1264
|
"(Class: <Object>)") do
|
1239
1265
|
assert_alias_method(object, :alias_method, :nonexistent)
|
1240
1266
|
end
|
@@ -1246,7 +1272,7 @@ EOM
|
|
1246
1272
|
end
|
1247
1273
|
|
1248
1274
|
nonexistent_file = __FILE__ + ".nonexistent"
|
1249
|
-
|
1275
|
+
check_fail("<#{nonexistent_file.inspect}> expected to exist") do
|
1250
1276
|
assert_path_exist(nonexistent_file)
|
1251
1277
|
end
|
1252
1278
|
end
|
@@ -1257,7 +1283,7 @@ EOM
|
|
1257
1283
|
assert_path_not_exist(nonexistent_file)
|
1258
1284
|
end
|
1259
1285
|
|
1260
|
-
|
1286
|
+
check_fail("<#{__FILE__.inspect}> expected to not exist") do
|
1261
1287
|
assert_path_not_exist(__FILE__)
|
1262
1288
|
end
|
1263
1289
|
end
|
@@ -1285,26 +1311,26 @@ EOM
|
|
1285
1311
|
end
|
1286
1312
|
|
1287
1313
|
def test_fail_nil
|
1288
|
-
|
1314
|
+
check_fail("<nil> is not true.") do
|
1289
1315
|
assert(nil)
|
1290
1316
|
end
|
1291
1317
|
end
|
1292
1318
|
|
1293
1319
|
def test_fail_false
|
1294
|
-
|
1320
|
+
check_fail("<false> is not true.") do
|
1295
1321
|
assert(false)
|
1296
1322
|
end
|
1297
1323
|
end
|
1298
1324
|
|
1299
1325
|
def test_fail_false_with_message
|
1300
|
-
|
1326
|
+
check_fail("failed assert.\n" +
|
1301
1327
|
"<false> is not true.") do
|
1302
1328
|
assert(false, "failed assert")
|
1303
1329
|
end
|
1304
1330
|
end
|
1305
1331
|
|
1306
1332
|
def test_fail_with_assertion_message
|
1307
|
-
|
1333
|
+
check_fail("user message.\n" +
|
1308
1334
|
"placeholder <:in> message") do
|
1309
1335
|
assert(false, build_message("user message",
|
1310
1336
|
"placeholder <?> message",
|
@@ -1313,7 +1339,7 @@ EOM
|
|
1313
1339
|
end
|
1314
1340
|
|
1315
1341
|
def test_error_invalid_message_true
|
1316
|
-
|
1342
|
+
check_fail("assertion message must be String, Proc or " +
|
1317
1343
|
"Test::Unit::Assertions::AssertionMessage: " +
|
1318
1344
|
"<true>(<TrueClass>)") do
|
1319
1345
|
begin
|
@@ -1363,7 +1389,7 @@ EOM
|
|
1363
1389
|
end
|
1364
1390
|
|
1365
1391
|
def test_fail_with_message
|
1366
|
-
|
1392
|
+
check_fail("message.\n" +
|
1367
1393
|
"<0.5> -/+ <0.05> expected to include\n" +
|
1368
1394
|
"<0.4>.\n" +
|
1369
1395
|
"\n" +
|
@@ -1376,7 +1402,7 @@ EOM
|
|
1376
1402
|
def test_fail_because_not_float_like_object
|
1377
1403
|
object = Object.new
|
1378
1404
|
inspected_object = AssertionMessage.convert(object)
|
1379
|
-
|
1405
|
+
check_fail("The arguments must respond to to_f; " +
|
1380
1406
|
"the first float did not.\n" +
|
1381
1407
|
"<#{inspected_object}>.respond_to?(:to_f) expected\n" +
|
1382
1408
|
"(Class: <Object>)") do
|
@@ -1385,14 +1411,14 @@ EOM
|
|
1385
1411
|
end
|
1386
1412
|
|
1387
1413
|
def test_fail_because_negaitve_delta
|
1388
|
-
|
1414
|
+
check_fail("The delta should not be negative.\n" +
|
1389
1415
|
"<-0.1> expected to be\n>=\n<0.0>.") do
|
1390
1416
|
assert_in_delta(0.5, 0.4, -0.1, "message")
|
1391
1417
|
end
|
1392
1418
|
end
|
1393
1419
|
|
1394
1420
|
def test_fail_without_delta
|
1395
|
-
|
1421
|
+
check_fail("<1.402> -/+ <0.001> expected to include\n" +
|
1396
1422
|
"<1.404>.\n" +
|
1397
1423
|
"\n" +
|
1398
1424
|
"Relation:\n" +
|
@@ -1444,7 +1470,7 @@ EOM
|
|
1444
1470
|
end
|
1445
1471
|
|
1446
1472
|
def test_fail
|
1447
|
-
|
1473
|
+
check_fail("<1.4> -/+ <0.11> expected to not include\n" +
|
1448
1474
|
"<1.5>.\n" +
|
1449
1475
|
"\n" +
|
1450
1476
|
"Relation:\n" +
|
@@ -1458,7 +1484,7 @@ EOM
|
|
1458
1484
|
end
|
1459
1485
|
|
1460
1486
|
def test_fail_without_delta
|
1461
|
-
|
1487
|
+
check_fail("<1.402> -/+ <0.001> expected to not include\n" +
|
1462
1488
|
"<1.4021>.\n" +
|
1463
1489
|
"\n" +
|
1464
1490
|
"Relation:\n" +
|
@@ -1472,7 +1498,7 @@ EOM
|
|
1472
1498
|
end
|
1473
1499
|
|
1474
1500
|
def test_fail_with_message
|
1475
|
-
|
1501
|
+
check_fail("message.\n" +
|
1476
1502
|
"<0.5> -/+ <0.11> expected to not include\n" +
|
1477
1503
|
"<0.4>.\n" +
|
1478
1504
|
"\n" +
|
@@ -1489,7 +1515,7 @@ EOM
|
|
1489
1515
|
def test_fail_because_not_float_like_object
|
1490
1516
|
object = Object.new
|
1491
1517
|
inspected_object = AssertionMessage.convert(object)
|
1492
|
-
|
1518
|
+
check_fail("The arguments must respond to to_f; " +
|
1493
1519
|
"the first float did not.\n" +
|
1494
1520
|
"<#{inspected_object}>.respond_to?(:to_f) expected\n" +
|
1495
1521
|
"(Class: <Object>)") do
|
@@ -1498,7 +1524,7 @@ EOM
|
|
1498
1524
|
end
|
1499
1525
|
|
1500
1526
|
def test_fail_because_negaitve_delta
|
1501
|
-
|
1527
|
+
check_fail("The delta should not be negative.\n" +
|
1502
1528
|
"<-0.11> expected to be\n>=\n<0.0>.") do
|
1503
1529
|
assert_not_in_delta(0.5, 0.4, -0.11, "message")
|
1504
1530
|
end
|
@@ -1549,7 +1575,7 @@ EOM
|
|
1549
1575
|
end
|
1550
1576
|
|
1551
1577
|
def test_fail_with_message
|
1552
|
-
|
1578
|
+
check_fail("message.\n" +
|
1553
1579
|
"<10000> -/+ (<10000> * <0.1>)[1000.0] " +
|
1554
1580
|
"expected to include\n" +
|
1555
1581
|
"<8999>.\n" +
|
@@ -1567,7 +1593,7 @@ EOM
|
|
1567
1593
|
def test_fail_because_not_float_like_object
|
1568
1594
|
object = Object.new
|
1569
1595
|
inspected_object = AssertionMessage.convert(object)
|
1570
|
-
|
1596
|
+
check_fail("The arguments must respond to to_f; " +
|
1571
1597
|
"the first float did not.\n" +
|
1572
1598
|
"<#{inspected_object}>.respond_to?(:to_f) expected\n" +
|
1573
1599
|
"(Class: <Object>)") do
|
@@ -1576,14 +1602,14 @@ EOM
|
|
1576
1602
|
end
|
1577
1603
|
|
1578
1604
|
def test_fail_because_negaitve_epsilon
|
1579
|
-
|
1605
|
+
check_fail("The epsilon should not be negative.\n" +
|
1580
1606
|
"<-0.1> expected to be\n>=\n<0.0>.") do
|
1581
1607
|
assert_in_epsilon(10000, 9000, -0.1, "message")
|
1582
1608
|
end
|
1583
1609
|
end
|
1584
1610
|
|
1585
1611
|
def test_fail_without_epsilon
|
1586
|
-
|
1612
|
+
check_fail("<10000> -/+ (<10000> * <0.001>)[10.0] " +
|
1587
1613
|
"expected to include\n" +
|
1588
1614
|
"<10011>.\n" +
|
1589
1615
|
"\n" +
|
@@ -1636,7 +1662,7 @@ EOM
|
|
1636
1662
|
end
|
1637
1663
|
|
1638
1664
|
def test_fail
|
1639
|
-
|
1665
|
+
check_fail("<10000> -/+ (<10000> * <0.1>)[1000.0] " +
|
1640
1666
|
"expected to not include\n" +
|
1641
1667
|
"<9000>.\n" +
|
1642
1668
|
"\n" +
|
@@ -1651,7 +1677,7 @@ EOM
|
|
1651
1677
|
end
|
1652
1678
|
|
1653
1679
|
def test_fail_without_epsilon
|
1654
|
-
|
1680
|
+
check_fail("<10000> -/+ (<10000> * <0.001>)[10.0] " +
|
1655
1681
|
"expected to not include\n" +
|
1656
1682
|
"<9990>.\n" +
|
1657
1683
|
"\n" +
|
@@ -1666,7 +1692,7 @@ EOM
|
|
1666
1692
|
end
|
1667
1693
|
|
1668
1694
|
def test_fail_with_message
|
1669
|
-
|
1695
|
+
check_fail("message.\n" +
|
1670
1696
|
"<10000> -/+ (<10000> * <0.1>)[1000.0] " +
|
1671
1697
|
"expected to not include\n" +
|
1672
1698
|
"<9000>.\n" +
|
@@ -1684,7 +1710,7 @@ EOM
|
|
1684
1710
|
def test_fail_because_not_float_like_object
|
1685
1711
|
object = Object.new
|
1686
1712
|
inspected_object = AssertionMessage.convert(object)
|
1687
|
-
|
1713
|
+
check_fail("The arguments must respond to to_f; " +
|
1688
1714
|
"the first float did not.\n" +
|
1689
1715
|
"<#{inspected_object}>.respond_to?(:to_f) expected\n" +
|
1690
1716
|
"(Class: <Object>)") do
|
@@ -1693,7 +1719,7 @@ EOM
|
|
1693
1719
|
end
|
1694
1720
|
|
1695
1721
|
def test_fail_because_negaitve_epsilon
|
1696
|
-
|
1722
|
+
check_fail("The epsilon should not be negative.\n" +
|
1697
1723
|
"<-0.1> expected to be\n>=\n<0.0>.") do
|
1698
1724
|
assert_not_in_epsilon(10000, 9000, -0.1, "message")
|
1699
1725
|
end
|
@@ -1716,14 +1742,14 @@ EOM
|
|
1716
1742
|
end
|
1717
1743
|
|
1718
1744
|
def test_fail
|
1719
|
-
|
1745
|
+
check_fail("<[1, 2, 3]> expected to include\n" +
|
1720
1746
|
"<4>.") do
|
1721
1747
|
assert_include([1, 2, 3], 4)
|
1722
1748
|
end
|
1723
1749
|
end
|
1724
1750
|
|
1725
1751
|
def test_fail_with_message
|
1726
|
-
|
1752
|
+
check_fail("message.\n" +
|
1727
1753
|
"<[1, 2, 3]> expected to include\n" +
|
1728
1754
|
"<4>.") do
|
1729
1755
|
assert_include([1, 2, 3], 4, "message")
|
@@ -1733,7 +1759,7 @@ EOM
|
|
1733
1759
|
def test_fail_because_not_collection_like_object
|
1734
1760
|
object = Object.new
|
1735
1761
|
inspected_object = AssertionMessage.convert(object)
|
1736
|
-
|
1762
|
+
check_fail("The collection must respond to :include?.\n" +
|
1737
1763
|
"<#{inspected_object}>.respond_to?(:include?) expected\n" +
|
1738
1764
|
"(Class: <Object>)") do
|
1739
1765
|
assert_include(object, 1)
|
@@ -1757,14 +1783,14 @@ EOM
|
|
1757
1783
|
end
|
1758
1784
|
|
1759
1785
|
def test_fail
|
1760
|
-
|
1786
|
+
check_fail("<[1, 2, 3]> expected to not include\n" +
|
1761
1787
|
"<2>.") do
|
1762
1788
|
assert_not_include([1, 2, 3], 2)
|
1763
1789
|
end
|
1764
1790
|
end
|
1765
1791
|
|
1766
1792
|
def test_fail_with_message
|
1767
|
-
|
1793
|
+
check_fail("message.\n" +
|
1768
1794
|
"<[1, 2, 3]> expected to not include\n" +
|
1769
1795
|
"<2>.") do
|
1770
1796
|
assert_not_include([1, 2, 3], 2, "message")
|
@@ -1774,7 +1800,7 @@ EOM
|
|
1774
1800
|
def test_fail_because_not_collection_like_object
|
1775
1801
|
object = Object.new
|
1776
1802
|
inspected_object = AssertionMessage.convert(object)
|
1777
|
-
|
1803
|
+
check_fail("The collection must respond to :include?.\n" +
|
1778
1804
|
"<#{inspected_object}>.respond_to?(:include?) expected\n" +
|
1779
1805
|
"(Class: <Object>)") do
|
1780
1806
|
assert_not_include(object, 1)
|
@@ -1798,13 +1824,13 @@ EOM
|
|
1798
1824
|
end
|
1799
1825
|
|
1800
1826
|
def test_fail
|
1801
|
-
|
1827
|
+
check_fail("<[1]> expected to be empty.") do
|
1802
1828
|
assert_empty([1])
|
1803
1829
|
end
|
1804
1830
|
end
|
1805
1831
|
|
1806
1832
|
def test_fail_with_message
|
1807
|
-
|
1833
|
+
check_fail("message.\n" +
|
1808
1834
|
"<[1]> expected to be empty.") do
|
1809
1835
|
assert_empty([1], "message")
|
1810
1836
|
end
|
@@ -1813,7 +1839,7 @@ EOM
|
|
1813
1839
|
def test_fail_because_no_empty_method
|
1814
1840
|
object = Object.new
|
1815
1841
|
inspected_object = AssertionMessage.convert(object)
|
1816
|
-
|
1842
|
+
check_fail("The object must respond to :empty?.\n" +
|
1817
1843
|
"<#{inspected_object}>.respond_to?(:empty?) expected\n" +
|
1818
1844
|
"(Class: <Object>)") do
|
1819
1845
|
assert_empty(object)
|
@@ -1837,13 +1863,13 @@ EOM
|
|
1837
1863
|
end
|
1838
1864
|
|
1839
1865
|
def test_fail
|
1840
|
-
|
1866
|
+
check_fail("<[]> expected to not be empty.") do
|
1841
1867
|
assert_not_empty([])
|
1842
1868
|
end
|
1843
1869
|
end
|
1844
1870
|
|
1845
1871
|
def test_fail_with_message
|
1846
|
-
|
1872
|
+
check_fail("message.\n" +
|
1847
1873
|
"<[]> expected to not be empty.") do
|
1848
1874
|
assert_not_empty([], "message")
|
1849
1875
|
end
|
@@ -1852,7 +1878,7 @@ EOM
|
|
1852
1878
|
def test_fail_because_no_empty_method
|
1853
1879
|
object = Object.new
|
1854
1880
|
inspected_object = AssertionMessage.convert(object)
|
1855
|
-
|
1881
|
+
check_fail("The object must respond to :empty?.\n" +
|
1856
1882
|
"<#{inspected_object}>.respond_to?(:empty?) expected\n" +
|
1857
1883
|
"(Class: <Object>)") do
|
1858
1884
|
assert_not_empty(object)
|
@@ -1876,7 +1902,7 @@ message.
|
|
1876
1902
|
<member?(*[2])> with not a true value but was
|
1877
1903
|
<true>.
|
1878
1904
|
EOM
|
1879
|
-
|
1905
|
+
check_fail(expected_message.chomp) do
|
1880
1906
|
assert_not_send([[1, 2], :member?, 2], "message")
|
1881
1907
|
end
|
1882
1908
|
end
|