rspec 0.5.16 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +12 -0
- data/EXAMPLES.rd +2 -2
- data/examples/custom_method_spec.rb +2 -2
- data/examples/mocking_spec.rb +2 -2
- data/lib/spec/api/helper.rb +0 -6
- data/lib/spec/api/helper/diff.rb +1 -0
- data/lib/spec/api/helper/have_helper.rb +7 -23
- data/lib/spec/api/helper/should_helper.rb +23 -19
- data/lib/spec/api/helper/should_negator.rb +10 -18
- data/lib/spec/api/mocks/argument_expectation.rb +2 -2
- data/lib/spec/api/mocks/message_expectation.rb +28 -53
- data/lib/spec/api/mocks/mock.rb +4 -5
- data/lib/spec/api/sugar.rb +6 -23
- data/lib/spec/runner/instance_exec.rb +11 -5
- data/lib/spec/version.rb +2 -2
- data/test/spec/api/helper/arbitrary_predicate_test.rb +16 -16
- data/test/spec/api/helper/containment_test.rb +16 -16
- data/test/spec/api/helper/identity_test.rb +8 -8
- data/test/spec/api/helper/object_equality_test.rb +13 -13
- data/test/spec/api/helper/raising_test.rb +14 -14
- data/test/spec/api/helper/regex_matching_test.rb +4 -4
- data/test/spec/api/helper/should_have_test.rb +26 -20
- data/test/spec/api/helper/should_satisfy_test.rb +5 -5
- data/test/spec/api/helper/throwing_test.rb +7 -7
- data/test/spec/api/helper/true_false_special_case_test.rb +12 -12
- data/test/spec/api/helper/typing_test.rb +14 -14
- data/test/spec/api/mocks/mock_arg_constraints_test.rb +26 -20
- data/test/spec/api/mocks/mock_counts_test.rb +431 -0
- data/test/spec/api/mocks/mock_ordering_test.rb +61 -42
- data/test/spec/api/mocks/mock_test.rb +68 -230
- data/test/spec/api/sugar_test.rb +1 -1
- data/test/spec/runner/backtrace_tweaker_test.rb +2 -2
- data/test/spec/runner/context_runner_test.rb +4 -4
- data/test/spec/runner/context_test.rb +22 -22
- data/test/spec/runner/execution_context_test.rb +1 -1
- data/test/spec/runner/reporter_test.rb +6 -6
- data/test/spec/runner/specification_test.rb +30 -30
- data/test/test_classes.rb +13 -4
- metadata +6 -11
- data/lib/spec/api/helper/instance_helper.rb +0 -15
- data/lib/spec/api/helper/instance_negator.rb +0 -15
- data/lib/spec/api/helper/kind_helper.rb +0 -15
- data/lib/spec/api/helper/kind_negator.rb +0 -15
- data/lib/spec/api/helper/respond_helper.rb +0 -15
- data/lib/spec/api/helper/respond_negator.rb +0 -15
- data/test/spec/api/duck_type_test.rb +0 -19
@@ -1,14 +1,20 @@
|
|
1
|
-
# http://eigenclass.org/hiki.rb?
|
1
|
+
# http://eigenclass.org/hiki.rb?bounded+space+instance_exec
|
2
2
|
class Object
|
3
3
|
module InstanceExecHelper; end
|
4
4
|
include InstanceExecHelper
|
5
|
-
def instance_exec(*args, &block)
|
6
|
-
|
7
|
-
|
5
|
+
def instance_exec(*args, &block)
|
6
|
+
begin
|
7
|
+
old_critical, Thread.critical = Thread.critical, true
|
8
|
+
n = 0
|
9
|
+
n += 1 while respond_to?(mname="__instance_exec#{n}")
|
10
|
+
InstanceExecHelper.module_eval{ define_method(mname, &block) }
|
11
|
+
ensure
|
12
|
+
Thread.critical = old_critical
|
13
|
+
end
|
8
14
|
begin
|
9
15
|
ret = send(mname, *args)
|
10
16
|
ensure
|
11
|
-
InstanceExecHelper.module_eval{
|
17
|
+
InstanceExecHelper.module_eval{ remove_method(mname) } rescue nil
|
12
18
|
end
|
13
19
|
ret
|
14
20
|
end
|
data/lib/spec/version.rb
CHANGED
@@ -6,18 +6,18 @@ module Spec
|
|
6
6
|
|
7
7
|
class ArbitraryPredicateTest < Test::Unit::TestCase
|
8
8
|
|
9
|
-
#
|
9
|
+
# should_be_funny
|
10
10
|
|
11
11
|
def test_should_be_funny_should_raise_when_target_doesnt_understand_funny
|
12
12
|
assert_raise(NoMethodError) do
|
13
|
-
5.
|
13
|
+
5.should_be_funny
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
17
|
def test_should_be_funny_should_raise_when_sending_funny_to_target_returns_false
|
18
18
|
mock = HandCodedMock.new(false)
|
19
19
|
assert_raise(ExpectationNotMetError) do
|
20
|
-
mock.
|
20
|
+
mock.should_be_funny
|
21
21
|
end
|
22
22
|
mock.__verify
|
23
23
|
end
|
@@ -25,7 +25,7 @@ module Spec
|
|
25
25
|
def test_should_be_funny_should_raise_when_sending_funny_to_target_returns_nil
|
26
26
|
mock = HandCodedMock.new(nil)
|
27
27
|
assert_raise(ExpectationNotMetError) do
|
28
|
-
mock.
|
28
|
+
mock.should_be_funny
|
29
29
|
end
|
30
30
|
mock.__verify
|
31
31
|
end
|
@@ -33,7 +33,7 @@ module Spec
|
|
33
33
|
def test_should_be_funny_should_not_raise_when_sending_funny_to_target_returns_true
|
34
34
|
mock = HandCodedMock.new(true)
|
35
35
|
assert_nothing_raised do
|
36
|
-
mock.
|
36
|
+
mock.should_be_funny
|
37
37
|
end
|
38
38
|
mock.__verify
|
39
39
|
end
|
@@ -41,33 +41,33 @@ module Spec
|
|
41
41
|
def test_should_be_funny_should_not_raise_when_sending_funny_to_target_returns_something_other_than_true_false_or_nil
|
42
42
|
mock = HandCodedMock.new(5)
|
43
43
|
assert_nothing_raised do
|
44
|
-
mock.
|
44
|
+
mock.should_be_funny
|
45
45
|
end
|
46
46
|
mock.__verify
|
47
47
|
end
|
48
48
|
|
49
|
-
#
|
49
|
+
# should_be_funny(args)
|
50
50
|
|
51
51
|
def test_should_be_funny_with_args_passes_args_properly
|
52
52
|
mock = HandCodedMock.new(true)
|
53
53
|
assert_nothing_raised do
|
54
|
-
mock.
|
54
|
+
mock.should_be_hungry(1, 2, 3)
|
55
55
|
end
|
56
56
|
mock.__verify
|
57
57
|
end
|
58
58
|
|
59
|
-
#
|
59
|
+
# should_not_be_funny
|
60
60
|
|
61
61
|
def test_should_not_be_funny_should_raise_when_target_doesnt_understand_funny
|
62
62
|
assert_raise(NoMethodError) do
|
63
|
-
5.
|
63
|
+
5.should_not_be_funny
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
67
|
def test_should_not_be_funny_should_raise_when_sending_funny_to_target_returns_true
|
68
68
|
mock = HandCodedMock.new(true)
|
69
69
|
assert_raise(ExpectationNotMetError) do
|
70
|
-
mock.
|
70
|
+
mock.should_not_be_funny
|
71
71
|
end
|
72
72
|
mock.__verify
|
73
73
|
end
|
@@ -75,7 +75,7 @@ module Spec
|
|
75
75
|
def test_should_not_be_funny_shouldnt_raise_when_sending_funny_to_target_returns_nil
|
76
76
|
mock = HandCodedMock.new(nil)
|
77
77
|
assert_nothing_raised do
|
78
|
-
mock.
|
78
|
+
mock.should_not_be_funny
|
79
79
|
end
|
80
80
|
mock.__verify
|
81
81
|
end
|
@@ -83,7 +83,7 @@ module Spec
|
|
83
83
|
def test_should_not_be_funny_shouldnt_raise_when_sending_funny_to_target_returns_false
|
84
84
|
mock = HandCodedMock.new(false)
|
85
85
|
assert_nothing_raised do
|
86
|
-
mock.
|
86
|
+
mock.should_not_be_funny
|
87
87
|
end
|
88
88
|
mock.__verify
|
89
89
|
end
|
@@ -91,17 +91,17 @@ module Spec
|
|
91
91
|
def test_should_not_be_funny_should_raise_when_sending_funny_to_target_returns_something_other_than_true_false_or_nil
|
92
92
|
mock = HandCodedMock.new(5)
|
93
93
|
assert_raise(ExpectationNotMetError) do
|
94
|
-
mock.
|
94
|
+
mock.should_not_be_funny
|
95
95
|
end
|
96
96
|
mock.__verify
|
97
97
|
end
|
98
98
|
|
99
|
-
#
|
99
|
+
# should_be_funny(args)
|
100
100
|
|
101
101
|
def test_should_not_be_funny_with_args_passes_args_properly
|
102
102
|
mock = HandCodedMock.new(false)
|
103
103
|
assert_nothing_raised do
|
104
|
-
mock.
|
104
|
+
mock.should_not_be_hungry(1, 2, 3)
|
105
105
|
end
|
106
106
|
mock.__verify
|
107
107
|
end
|
@@ -16,49 +16,49 @@ module Spec
|
|
16
16
|
|
17
17
|
def test_should_include_shouldnt_raise_when_string_inclusion_is_present
|
18
18
|
assert_nothing_raised do
|
19
|
-
@dummy.
|
19
|
+
@dummy.should_include "mm"
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
23
23
|
def test_should_include_should_raise_when_string_inclusion_is_missing
|
24
24
|
assert_raise(ExpectationNotMetError) do
|
25
|
-
@dummy.
|
25
|
+
@dummy.should_include "abc"
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
29
|
def test_should_include_shouldnt_raise_when_array_inclusion_is_present
|
30
30
|
assert_nothing_raised do
|
31
|
-
[1, 2, 3].
|
31
|
+
[1, 2, 3].should_include 2
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
35
35
|
def test_should_include_should_raise_when_array_inclusion_is_missing
|
36
36
|
assert_raise(ExpectationNotMetError) do
|
37
|
-
[1, 2, 3].
|
37
|
+
[1, 2, 3].should_include 5
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
41
|
def test_should_include_shouldnt_raise_when_hash_inclusion_is_present
|
42
42
|
assert_nothing_raised do
|
43
|
-
{"a"=>1}.
|
43
|
+
{"a"=>1}.should_include "a"
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
47
47
|
def test_should_include_should_raise_when_hash_inclusion_is_missing
|
48
48
|
assert_raise(ExpectationNotMetError) do
|
49
|
-
{"a"=>1}.
|
49
|
+
{"a"=>1}.should_include "b"
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
53
53
|
def test_should_include_shouldnt_raise_when_enumerable_inclusion_is_present
|
54
54
|
assert_nothing_raised do
|
55
|
-
IO.constants.
|
55
|
+
IO.constants.should_include "SEEK_SET"
|
56
56
|
end
|
57
57
|
end
|
58
58
|
|
59
59
|
def test_should_include_should_raise_when_enumerable_inclusion_is_missing
|
60
60
|
assert_raise(ExpectationNotMetError) do
|
61
|
-
IO.constants.
|
61
|
+
IO.constants.should_include "BLAH"
|
62
62
|
end
|
63
63
|
end
|
64
64
|
|
@@ -66,49 +66,49 @@ module Spec
|
|
66
66
|
|
67
67
|
def test_should_not_include_shouldnt_raise_when_string_inclusion_is_missing
|
68
68
|
assert_nothing_raised do
|
69
|
-
@dummy.
|
69
|
+
@dummy.should_not_include "abc"
|
70
70
|
end
|
71
71
|
end
|
72
72
|
|
73
73
|
def test_should_not_include_should_raise_when_string_inclusion_is_present
|
74
74
|
assert_raise(ExpectationNotMetError) do
|
75
|
-
@dummy.
|
75
|
+
@dummy.should_not_include "mm"
|
76
76
|
end
|
77
77
|
end
|
78
78
|
|
79
79
|
def test_should_not_include_shouldnt_raise_when_array_inclusion_is_missing
|
80
80
|
assert_nothing_raised do
|
81
|
-
[1, 2, 3].
|
81
|
+
[1, 2, 3].should_not_include 5
|
82
82
|
end
|
83
83
|
end
|
84
84
|
|
85
85
|
def test_should_not_include_should_raise_when_array_inclusion_is_present
|
86
86
|
assert_raise(ExpectationNotMetError) do
|
87
|
-
[1, 2, 3].
|
87
|
+
[1, 2, 3].should_not_include 2
|
88
88
|
end
|
89
89
|
end
|
90
90
|
|
91
91
|
def test_should_not_include_shouldnt_raise_when_hash_inclusion_is_missing
|
92
92
|
assert_nothing_raised do
|
93
|
-
{"a"=>1}.
|
93
|
+
{"a"=>1}.should_not_include "b"
|
94
94
|
end
|
95
95
|
end
|
96
96
|
|
97
97
|
def test_should_not_include_should_raise_when_hash_inclusion_is_present
|
98
98
|
assert_raise(ExpectationNotMetError) do
|
99
|
-
{"a"=>1}.
|
99
|
+
{"a"=>1}.should_not_include "a"
|
100
100
|
end
|
101
101
|
end
|
102
102
|
|
103
103
|
def test_should_not_include_shouldnt_raise_when_enumerable_inclusion_is_present
|
104
104
|
assert_nothing_raised do
|
105
|
-
IO.constants.
|
105
|
+
IO.constants.should_not_include "BLAH"
|
106
106
|
end
|
107
107
|
end
|
108
108
|
|
109
109
|
def test_should_not_include_should_raise_when_enumerable_inclusion_is_missing
|
110
110
|
assert_raise(ExpectationNotMetError) do
|
111
|
-
IO.constants.
|
111
|
+
IO.constants.should_not_include "SEEK_SET"
|
112
112
|
end
|
113
113
|
end
|
114
114
|
end
|
@@ -14,25 +14,25 @@ module Spec
|
|
14
14
|
|
15
15
|
def test_should_not_raise_when_objects_are_same
|
16
16
|
assert_nothing_raised do
|
17
|
-
@dummy.
|
17
|
+
@dummy.should_be @dummy
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
21
|
def test_should_raise_when_objects_are_not_same
|
22
22
|
assert_raise(ExpectationNotMetError) do
|
23
|
-
@dummy.
|
23
|
+
@dummy.should_be @equal_dummy
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
27
|
def test_should_not_raise_when_both_objects_are_nil
|
28
28
|
assert_nothing_raised do
|
29
|
-
@nil_var.
|
29
|
+
@nil_var.should_be nil
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
33
|
def test_should_raise_when_object_is_not_nil
|
34
34
|
assert_raise(ExpectationNotMetError) do
|
35
|
-
@dummy.
|
35
|
+
@dummy.should_be nil
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
@@ -47,25 +47,25 @@ module Spec
|
|
47
47
|
|
48
48
|
def test_should_not_raise_when_objects_are_not_same
|
49
49
|
assert_nothing_raised do
|
50
|
-
@dummy.
|
50
|
+
@dummy.should_not_be @equal_dummy
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
54
54
|
def test_should_raise_when_objects_are_same
|
55
55
|
assert_raise(ExpectationNotMetError) do
|
56
|
-
@dummy.
|
56
|
+
@dummy.should_not_be @dummy
|
57
57
|
end
|
58
58
|
end
|
59
59
|
|
60
60
|
def test_should_not_raise_when_left_is_not_nil_and_right_is_nil
|
61
61
|
assert_nothing_raised do
|
62
|
-
@dummy.
|
62
|
+
@dummy.should_not_be nil
|
63
63
|
end
|
64
64
|
end
|
65
65
|
|
66
66
|
def test_should_raise_when_both_objects_are_nil
|
67
67
|
assert_raise(ExpectationNotMetError) do
|
68
|
-
@nil_var.
|
68
|
+
@nil_var.should_not_be nil
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
@@ -7,13 +7,13 @@ module Spec
|
|
7
7
|
|
8
8
|
def test_should_not_raise_when_objects_are_equal
|
9
9
|
assert_nothing_raised do
|
10
|
-
'apple'.
|
10
|
+
'apple'.should_equal 'apple'
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
14
|
def test_should_raise_when_objects_are_not_equal
|
15
15
|
assert_raise(ExpectationNotMetError) do
|
16
|
-
'apple'.
|
16
|
+
'apple'.should_equal 'orange'
|
17
17
|
end
|
18
18
|
end
|
19
19
|
end
|
@@ -22,13 +22,13 @@ module Spec
|
|
22
22
|
|
23
23
|
def test_should_not_raise_when_objects_are_not_equal
|
24
24
|
assert_nothing_raised do
|
25
|
-
'apple'.
|
25
|
+
'apple'.should_not_equal 'orange'
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
29
|
def test_should_not_equal_should_raise_when_objects_are_equal
|
30
30
|
assert_raise(ExpectationNotMetError) do
|
31
|
-
'apple'.
|
31
|
+
'apple'.should_not_equal 'apple'
|
32
32
|
end
|
33
33
|
end
|
34
34
|
end
|
@@ -36,26 +36,26 @@ module Spec
|
|
36
36
|
class ShouldBeCloseTest < Test::Unit::TestCase
|
37
37
|
def test_should_not_raise_when_values_are_within_bounds
|
38
38
|
assert_nothing_raised do
|
39
|
-
3.5.
|
40
|
-
3.5.
|
41
|
-
3.5.
|
42
|
-
3.5.
|
43
|
-
3.5.
|
39
|
+
3.5.should_be_close 3.5, 0.5
|
40
|
+
3.5.should_be_close 3.1, 0.5
|
41
|
+
3.5.should_be_close 3.01, 0.5
|
42
|
+
3.5.should_be_close 3.9, 0.5
|
43
|
+
3.5.should_be_close 3.99, 0.5
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
47
47
|
def test_should_raise_when_values_are_outside_bounds
|
48
48
|
assert_raise(ExpectationNotMetError) do
|
49
|
-
3.5.
|
49
|
+
3.5.should_be_close 3.0, 0.5
|
50
50
|
end
|
51
51
|
assert_raise(ExpectationNotMetError) do
|
52
|
-
3.5.
|
52
|
+
3.5.should_be_close 2.0, 0.5
|
53
53
|
end
|
54
54
|
assert_raise(ExpectationNotMetError) do
|
55
|
-
3.5.
|
55
|
+
3.5.should_be_close 4.0, 0.5
|
56
56
|
end
|
57
57
|
assert_raise(ExpectationNotMetError) do
|
58
|
-
3.5.
|
58
|
+
3.5.should_be_close 5.0, 0.5
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
@@ -7,31 +7,31 @@ module Spec
|
|
7
7
|
|
8
8
|
def test_should_pass_when_exact_exception_is_raised
|
9
9
|
assert_nothing_raised do
|
10
|
-
proc { ''.nonexistent_method }.
|
10
|
+
proc { ''.nonexistent_method }.should_raise NoMethodError
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
14
|
def test_should_pass_when_exact_exception_is_raised_with_message
|
15
15
|
assert_nothing_raised do
|
16
|
-
lambda { raise StandardError.new("this is standard") }.
|
16
|
+
lambda { raise StandardError.new("this is standard") }.should_raise StandardError, "this is standard"
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
20
|
def test_should_fail_when_exact_exception_is_raised_with_wrong_message
|
21
21
|
assert_raises(Spec::Api::ExpectationNotMetError) do
|
22
|
-
lambda { raise StandardError.new("chunky bacon") }.
|
22
|
+
lambda { raise StandardError.new("chunky bacon") }.should_raise StandardError, "rotten tomatoes"
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
def test_should_pass_when_subclass_exception_is_raised
|
27
27
|
assert_nothing_raised do
|
28
|
-
proc { ''.nonexistent_method }.
|
28
|
+
proc { ''.nonexistent_method }.should_raise
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
32
|
def test_should_fail_when_wrong_exception_is_raised
|
33
33
|
begin
|
34
|
-
proc { ''.nonexistent_method }.
|
34
|
+
proc { ''.nonexistent_method }.should_raise SyntaxError
|
35
35
|
rescue => e
|
36
36
|
end
|
37
37
|
assert_equal("<Proc> should raise <SyntaxError> but raised #<NoMethodError: undefined method `nonexistent_method' for \"\":String>", e.message)
|
@@ -39,7 +39,7 @@ module Spec
|
|
39
39
|
|
40
40
|
def test_should_fail_when_no_exception_is_raised
|
41
41
|
begin
|
42
|
-
proc { }.
|
42
|
+
proc { }.should_raise SyntaxError
|
43
43
|
rescue => e
|
44
44
|
end
|
45
45
|
assert_equal("<Proc> should raise <SyntaxError> but raised nothing", e.message)
|
@@ -50,37 +50,37 @@ module Spec
|
|
50
50
|
|
51
51
|
def test_should_pass_when_exact_exception_is_raised_with_wrong_message
|
52
52
|
assert_nothing_raised do
|
53
|
-
lambda { raise StandardError.new("abc") }.
|
53
|
+
lambda { raise StandardError.new("abc") }.should_not_raise StandardError, "xyz"
|
54
54
|
end
|
55
55
|
end
|
56
56
|
|
57
57
|
def test_should_faile_when_exact_exception_is_raised_with_message
|
58
58
|
assert_raises(Spec::Api::ExpectationNotMetError) do
|
59
|
-
lambda { raise StandardError.new("abc") }.
|
59
|
+
lambda { raise StandardError.new("abc") }.should_not_raise StandardError, "abc"
|
60
60
|
end
|
61
61
|
end
|
62
62
|
|
63
63
|
def test_should_pass_when_other_exception_is_raised
|
64
64
|
assert_nothing_raised do
|
65
|
-
proc { ''.nonexistent_method }.
|
65
|
+
proc { ''.nonexistent_method }.should_not_raise SyntaxError
|
66
66
|
end
|
67
67
|
end
|
68
68
|
|
69
69
|
def test_should_pass_when_no_exception_is_raised
|
70
70
|
assert_nothing_raised do
|
71
|
-
proc { ''.to_s }.
|
71
|
+
proc { ''.to_s }.should_not_raise NoMethodError
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
75
75
|
def test_without_exception_should_pass_when_no_exception_is_raised
|
76
76
|
assert_nothing_raised do
|
77
|
-
proc { ''.to_s }.
|
77
|
+
proc { ''.to_s }.should_not_raise
|
78
78
|
end
|
79
79
|
end
|
80
80
|
|
81
81
|
def test_should_fail_when_specific_exception_is_raised
|
82
82
|
begin
|
83
|
-
proc { ''.nonexistent_method }.
|
83
|
+
proc { ''.nonexistent_method }.should_not_raise NoMethodError
|
84
84
|
rescue => e
|
85
85
|
end
|
86
86
|
assert_equal("<Proc> should not raise <NoMethodError>", e.message)
|
@@ -88,7 +88,7 @@ module Spec
|
|
88
88
|
|
89
89
|
def test_should_include_actual_error_in_failure_message
|
90
90
|
begin
|
91
|
-
proc { ''.nonexistent_method }.
|
91
|
+
proc { ''.nonexistent_method }.should_not_raise Exception
|
92
92
|
rescue => e
|
93
93
|
end
|
94
94
|
assert_equal("<Proc> should not raise <Exception> but raised #<NoMethodError: undefined method `nonexistent_method' for \"\":String>", e.message)
|
@@ -97,7 +97,7 @@ module Spec
|
|
97
97
|
def TODOtest_should_understand_raised_with_message_matching
|
98
98
|
lambda do
|
99
99
|
raise 'Hello'
|
100
|
-
end.
|
100
|
+
end.should_raise(StandardError).with.message.matching /ello/
|
101
101
|
end
|
102
102
|
|
103
103
|
end
|