flexmock 0.8.11 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +2 -2
- data/Rakefile +23 -65
- data/TAGS +689 -691
- data/doc/releases/flexmock-0.9.0.rdoc +89 -0
- data/lib/flexmock.rb +1 -1
- data/lib/flexmock/argument_matchers.rb +5 -5
- data/lib/flexmock/argument_types.rb +1 -1
- data/lib/flexmock/base.rb +1 -1
- data/lib/flexmock/core.rb +5 -5
- data/lib/flexmock/core_class_methods.rb +6 -6
- data/lib/flexmock/default_framework_adapter.rb +2 -2
- data/lib/flexmock/deprecated_methods.rb +1 -1
- data/lib/flexmock/errors.rb +1 -1
- data/lib/flexmock/expectation.rb +12 -12
- data/lib/flexmock/expectation_director.rb +1 -1
- data/lib/flexmock/mock_container.rb +12 -2
- data/lib/flexmock/noop.rb +2 -2
- data/lib/flexmock/ordering.rb +1 -1
- data/lib/flexmock/partial_mock.rb +10 -3
- data/lib/flexmock/rails.rb +1 -1
- data/lib/flexmock/recorder.rb +1 -1
- data/lib/flexmock/rspec.rb +1 -1
- data/lib/flexmock/test_unit.rb +2 -2
- data/lib/flexmock/test_unit_integration.rb +5 -5
- data/lib/flexmock/undefined.rb +8 -4
- data/lib/flexmock/validators.rb +2 -2
- data/lib/flexmock/version.rb +11 -0
- data/test/{test_aliasing.rb → aliasing_test.rb} +7 -8
- data/test/{test_container_methods.rb → container_methods_test.rb} +21 -22
- data/test/{test_default_framework_adapter.rb → default_framework_adapter_test.rb} +8 -9
- data/test/{test_demeter_mocking.rb → demeter_mocking_test.rb} +1 -4
- data/test/{test_deprecated_methods.rb → deprecated_methods_test.rb} +11 -13
- data/test/{test_examples_from_readme.rb → examples_from_readme_test.rb} +5 -6
- data/test/{test_extended_should_receive.rb → extended_should_receive_test.rb} +11 -12
- data/test/{test_flexmodel.rb → flexmodel_test.rb} +1 -2
- data/test/{test_naming.rb → naming_test.rb} +5 -6
- data/test/{test_new_instances.rb → new_instances_test.rb} +36 -28
- data/test/{test_partial_mock.rb → partial_mock_test.rb} +20 -18
- data/test/{test_rails_view_stub.rb → rails_view_stub_test.rb} +3 -3
- data/test/{test_record_mode.rb → record_mode_test.rb} +2 -5
- data/test/rspec_integration/integration_spec.rb +14 -8
- data/test/{test_samples.rb → samples_test.rb} +13 -14
- data/test/{test_should_ignore_missing.rb → should_ignore_missing_test.rb} +4 -6
- data/test/{test_should_receive.rb → should_receive_test.rb} +39 -42
- data/test/test_setup.rb +30 -0
- data/test/test_unit_integration/{test_auto_test_unit.rb → auto_test_unit_test.rb} +4 -4
- data/test/tu_integration_test.rb +99 -0
- data/test/{test_undefined.rb → undefined_test.rb} +2 -3
- metadata +31 -39
- data/test/asserts.rb +0 -34
- data/test/test_tu_integration.rb +0 -94
@@ -1,7 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
#---
|
4
|
-
# Copyright 2003
|
4
|
+
# Copyright 2003-2011 by Jim Weirich (jim@weirichhouse.org).
|
5
5
|
# All rights reserved.
|
6
6
|
|
7
7
|
# Permission is granted for use, copying, modification, distribution,
|
@@ -9,8 +9,7 @@
|
|
9
9
|
# above copyright notice is included.
|
10
10
|
#+++
|
11
11
|
|
12
|
-
require 'test/
|
13
|
-
require 'flexmock'
|
12
|
+
require 'test/test_setup'
|
14
13
|
|
15
14
|
class TemperatureSampler
|
16
15
|
def initialize(sensor)
|
@@ -49,7 +48,7 @@ class TestExamplesFromReadme < Test::Unit::TestCase
|
|
49
48
|
m.should_receive(:foo).and_return_undefined
|
50
49
|
m.foo.bar.baz
|
51
50
|
end
|
52
|
-
|
51
|
+
|
53
52
|
def test_db
|
54
53
|
db = flexmock('db')
|
55
54
|
db.should_receive(:query).and_return([1,2,3])
|
@@ -85,7 +84,7 @@ class TestExamplesFromReadme < Test::Unit::TestCase
|
|
85
84
|
assert_equal 12.3, db.query("GOOG")
|
86
85
|
db.finish
|
87
86
|
end
|
88
|
-
|
87
|
+
|
89
88
|
def test_ordered_queries_in_record_mode
|
90
89
|
db = flexmock('db')
|
91
90
|
db.should_expect do |rec|
|
@@ -146,7 +145,7 @@ class TestExamplesFromReadme < Test::Unit::TestCase
|
|
146
145
|
QuoteService.new.quote
|
147
146
|
end
|
148
147
|
end
|
149
|
-
|
148
|
+
|
150
149
|
def test_portfolio_value
|
151
150
|
flexmock(QuoteService).new_instances do |m|
|
152
151
|
m.should_receive(:quote).and_return(100)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
#---
|
4
|
-
# Copyright 2003
|
4
|
+
# Copyright 2003-2011 by Jim Weirich (jim@weirichhouse.org).
|
5
5
|
# All rights reserved.
|
6
6
|
|
7
7
|
# Permission is granted for use, copying, modification, distribution,
|
@@ -9,8 +9,7 @@
|
|
9
9
|
# above copyright notice is included.
|
10
10
|
#+++
|
11
11
|
|
12
|
-
require "test/
|
13
|
-
require "flexmock"
|
12
|
+
require "test/test_setup"
|
14
13
|
|
15
14
|
module ExtendedShouldReceiveTests
|
16
15
|
def test_accepts_expectation_hash
|
@@ -18,27 +17,27 @@ module ExtendedShouldReceiveTests
|
|
18
17
|
assert_equal :bar, @obj.foo
|
19
18
|
assert_equal :froz, @obj.baz
|
20
19
|
end
|
21
|
-
|
20
|
+
|
22
21
|
def test_accepts_list_of_methods
|
23
22
|
@mock.should_receive(:foo, :bar, "baz")
|
24
23
|
assert_nil @obj.foo
|
25
24
|
assert_nil @obj.bar
|
26
25
|
assert_nil @obj.baz
|
27
26
|
end
|
28
|
-
|
27
|
+
|
29
28
|
def test_contraints_apply_to_all_expectations
|
30
29
|
@mock.should_receive(:foo, :bar => :baz).with(1)
|
31
|
-
ex = assert_raise(
|
32
|
-
ex = assert_raise(
|
30
|
+
ex = assert_raise(assertion_failed_error) { @obj.foo(2) }
|
31
|
+
ex = assert_raise(assertion_failed_error) { @obj.bar(2) }
|
33
32
|
assert_equal :baz, @obj.bar(1)
|
34
33
|
end
|
35
|
-
|
34
|
+
|
36
35
|
def test_count_contraints_apply_to_all_expectations
|
37
36
|
@mock.should_receive(:foo, :bar => :baz).once
|
38
37
|
@obj.foo
|
39
|
-
assert_raise(
|
38
|
+
assert_raise(assertion_failed_error) { @mock.flexmock_verify }
|
40
39
|
end
|
41
|
-
|
40
|
+
|
42
41
|
def test_multiple_should_receives_are_allowed
|
43
42
|
@mock.should_receive(:hi).and_return(:bye).
|
44
43
|
should_receive(:hello => :goodbye)
|
@@ -50,7 +49,7 @@ end
|
|
50
49
|
class TestExtendedShouldReceiveOnFullMocks < Test::Unit::TestCase
|
51
50
|
include FlexMock::TestCase
|
52
51
|
include ExtendedShouldReceiveTests
|
53
|
-
|
52
|
+
|
54
53
|
def setup
|
55
54
|
@mock = flexmock("mock")
|
56
55
|
@obj = @mock
|
@@ -61,7 +60,7 @@ end
|
|
61
60
|
class TestExtendedShouldReceiveOnPartialMockProxies < Test::Unit::TestCase
|
62
61
|
include FlexMock::TestCase
|
63
62
|
include ExtendedShouldReceiveTests
|
64
|
-
|
63
|
+
|
65
64
|
def setup
|
66
65
|
@obj = Object.new
|
67
66
|
@mock = flexmock(@obj, "mock")
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
#---
|
4
|
-
# Copyright 2003
|
4
|
+
# Copyright 2003-2011 by Jim Weirich (jim@weirichhouse.org).
|
5
5
|
# All rights reserved.
|
6
6
|
|
7
7
|
# Permission is granted for use, copying, modification, distribution,
|
@@ -9,12 +9,11 @@
|
|
9
9
|
# above copyright notice is included.
|
10
10
|
#+++
|
11
11
|
|
12
|
-
require 'test/
|
13
|
-
require 'flexmock'
|
12
|
+
require 'test/test_setup'
|
14
13
|
|
15
14
|
class TestNaming < Test::Unit::TestCase
|
16
15
|
include FlexMock::TestCase
|
17
|
-
|
16
|
+
|
18
17
|
def test_name
|
19
18
|
m = flexmock("m")
|
20
19
|
assert_equal "m", m.flexmock_name
|
@@ -22,7 +21,7 @@ class TestNaming < Test::Unit::TestCase
|
|
22
21
|
|
23
22
|
def test_name_in_no_handler_found_error
|
24
23
|
m = flexmock("mmm")
|
25
|
-
ex = assert_raises(
|
24
|
+
ex = assert_raises(assertion_failed_error) {
|
26
25
|
m.should_receive(:xx).with(1)
|
27
26
|
m.xx(2)
|
28
27
|
}
|
@@ -31,7 +30,7 @@ class TestNaming < Test::Unit::TestCase
|
|
31
30
|
|
32
31
|
def test_name_in_received_count_error
|
33
32
|
m = flexmock("mmm")
|
34
|
-
ex = assert_raises(
|
33
|
+
ex = assert_raises(assertion_failed_error) {
|
35
34
|
m.should_receive(:xx).once
|
36
35
|
m.flexmock_verify
|
37
36
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
#---
|
4
|
-
# Copyright 2003
|
4
|
+
# Copyright 2003-2011 by Jim Weirich (jim@weirichhouse.org).
|
5
5
|
# All rights reserved.
|
6
6
|
|
7
7
|
# Permission is granted for use, copying, modification, distribution,
|
@@ -9,14 +9,12 @@
|
|
9
9
|
# above copyright notice is included.
|
10
10
|
#+++
|
11
11
|
|
12
|
-
require 'test/
|
13
|
-
require 'flexmock'
|
14
|
-
require 'test/redirect_error'
|
12
|
+
require 'test/test_setup'
|
15
13
|
|
16
14
|
class TestNewInstances < Test::Unit::TestCase
|
17
15
|
include FlexMock::TestCase
|
18
16
|
include FlexMock::RedirectError
|
19
|
-
|
17
|
+
|
20
18
|
class Dog
|
21
19
|
def bark
|
22
20
|
:woof
|
@@ -36,7 +34,7 @@ class TestNewInstances < Test::Unit::TestCase
|
|
36
34
|
block.call(self) if block_given?
|
37
35
|
end
|
38
36
|
end
|
39
|
-
|
37
|
+
|
40
38
|
class Connection
|
41
39
|
def initialize(*args)
|
42
40
|
yield(self) if block_given?
|
@@ -56,7 +54,7 @@ class TestNewInstances < Test::Unit::TestCase
|
|
56
54
|
m = Dog.new
|
57
55
|
assert_equal :whimper, m.bark
|
58
56
|
end
|
59
|
-
|
57
|
+
|
60
58
|
def test_new_instances_stubs_still_have_existing_methods
|
61
59
|
flexstub(Dog).new_instances do |obj|
|
62
60
|
obj.should_receive(:bark).and_return(:whimper)
|
@@ -84,7 +82,7 @@ class TestNewInstances < Test::Unit::TestCase
|
|
84
82
|
m = Cat.new("Fido") { x = :called }
|
85
83
|
assert_equal :called, x
|
86
84
|
flexmock_teardown
|
87
|
-
|
85
|
+
|
88
86
|
flexstub(Cat).new_instances { }
|
89
87
|
x = :not_called
|
90
88
|
m = Cat.new("Fido") { x = :called }
|
@@ -95,14 +93,14 @@ class TestNewInstances < Test::Unit::TestCase
|
|
95
93
|
flexstub(Dog).new_instances do |obj|
|
96
94
|
obj.should_receive(:bark).once.and_return(nil)
|
97
95
|
end
|
98
|
-
|
99
|
-
|
100
|
-
ex = assert_raise(
|
96
|
+
|
97
|
+
Dog.new
|
98
|
+
ex = assert_raise(assertion_failed_error) { flexmock_teardown }
|
101
99
|
assert_match(/method 'bark\(.*\)' called incorrect number of times/, ex.message)
|
102
100
|
end
|
103
101
|
|
104
102
|
def test_new_instances_reports_error_on_non_classes
|
105
|
-
ex = assert_raise(ArgumentError) {
|
103
|
+
ex = assert_raise(ArgumentError) {
|
106
104
|
flexstub(Dog.new).new_instances do |obj|
|
107
105
|
obj.should_receive(:hi)
|
108
106
|
end
|
@@ -110,7 +108,7 @@ class TestNewInstances < Test::Unit::TestCase
|
|
110
108
|
assert_match(/Class/, ex.message)
|
111
109
|
assert_match(/new_instances/, ex.message)
|
112
110
|
end
|
113
|
-
|
111
|
+
|
114
112
|
def test_does_not_by_default_stub_objects_created_with_allocate
|
115
113
|
flexstub(Dog).new_instances do |obj|
|
116
114
|
obj.should_receive(:bark).and_return(:whimper)
|
@@ -118,22 +116,32 @@ class TestNewInstances < Test::Unit::TestCase
|
|
118
116
|
m = Dog.allocate
|
119
117
|
assert_equal :woof, m.bark
|
120
118
|
end
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
119
|
+
|
120
|
+
if RUBY_VERSION >= "1.9"
|
121
|
+
def test_explicitly_mocking_allocation_in_new_instances_fails_in_ruby_19
|
122
|
+
assert_raise FlexMock::UsageError do
|
123
|
+
flexstub(Dog).new_instances(:allocate) do |obj|
|
124
|
+
obj.should_receive(:bark).and_return(:whimper)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
end
|
128
|
+
else
|
129
|
+
def test_can_explicitly_stub_objects_created_with_allocate
|
130
|
+
flexstub(Dog).new_instances(:allocate) do |obj|
|
131
|
+
obj.should_receive(:bark).and_return(:whimper)
|
132
|
+
end
|
133
|
+
m = Dog.allocate
|
134
|
+
assert_equal :whimper, m.bark
|
125
135
|
end
|
126
|
-
m = Dog.allocate
|
127
|
-
assert_equal :whimper, m.bark
|
128
136
|
end
|
129
|
-
|
137
|
+
|
130
138
|
def test_can_stub_objects_created_with_arbitrary_class_methods
|
131
139
|
flexstub(Dog).new_instances(:make) do |obj|
|
132
140
|
obj.should_receive(:bark).and_return(:whimper)
|
133
141
|
end
|
134
142
|
assert_equal :whimper, Dog.make.bark
|
135
143
|
end
|
136
|
-
|
144
|
+
|
137
145
|
def test_stubbing_arbitrary_class_methods_leaves_new_alone
|
138
146
|
flexstub(Dog).new_instances(:make) do |obj|
|
139
147
|
obj.should_receive(:bark).and_return(:whimper)
|
@@ -150,9 +158,9 @@ class TestNewInstances < Test::Unit::TestCase
|
|
150
158
|
assert_equal 1, counter
|
151
159
|
end
|
152
160
|
|
153
|
-
# Current behavior does not install stubs into the block passed to new.
|
161
|
+
# Current behavior does not install stubs into the block passed to new.
|
154
162
|
# This is rather difficult to achieve, although it would be nice. For the
|
155
|
-
# moment, we assure that they are not stubbed, but I am willing to change
|
163
|
+
# moment, we assure that they are not stubbed, but I am willing to change
|
156
164
|
# this in the future.
|
157
165
|
def test_blocks_on_new_do_not_have_stubs_installed
|
158
166
|
flexstub(Connection).new_instances do |new_con|
|
@@ -167,7 +175,7 @@ class TestNewInstances < Test::Unit::TestCase
|
|
167
175
|
end
|
168
176
|
assert block_run
|
169
177
|
end
|
170
|
-
|
178
|
+
|
171
179
|
def test_new_instances_accept_chained_expectations
|
172
180
|
flexmock(Dog).new_instances.
|
173
181
|
should_receive(:growl).and_return(:grr).
|
@@ -175,18 +183,18 @@ class TestNewInstances < Test::Unit::TestCase
|
|
175
183
|
assert_equal :grr, Dog.new.growl
|
176
184
|
assert_equal :flip, Dog.new.roll_over
|
177
185
|
end
|
178
|
-
|
186
|
+
|
179
187
|
def test_fancy_use_of_chained_should_received
|
180
188
|
flexmock(Dog).new_instances.should_receive(:woof => :grrr)
|
181
189
|
assert_equal :grrr, Dog.new.woof
|
182
190
|
end
|
183
|
-
|
191
|
+
|
184
192
|
def test_writable_accessors
|
185
193
|
flexmock(Dog).new_instances.should_receive(:name=).with("fido")
|
186
194
|
dog = Dog.new
|
187
195
|
dog.name = 'fido'
|
188
196
|
end
|
189
|
-
|
197
|
+
|
190
198
|
def test_ordering_can_be_specified
|
191
199
|
dog = Dog.new
|
192
200
|
flexmock(dog).should_receive(:bark).once.ordered
|
@@ -194,7 +202,7 @@ class TestNewInstances < Test::Unit::TestCase
|
|
194
202
|
dog.bark
|
195
203
|
dog.bite
|
196
204
|
end
|
197
|
-
|
205
|
+
|
198
206
|
def test_ordering_can_be_specified_in_groups
|
199
207
|
dog = Dog.new
|
200
208
|
flexmock(dog).should_receive(:wag).once.ordered(:safe)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
#---
|
4
|
-
# Copyright 2003
|
4
|
+
# Copyright 2003-2011 by Jim Weirich (jim@weirichhouse.org).
|
5
5
|
# All rights reserved.
|
6
6
|
|
7
7
|
# Permission is granted for use, copying, modification, distribution,
|
@@ -9,13 +9,11 @@
|
|
9
9
|
# above copyright notice is included.
|
10
10
|
#+++
|
11
11
|
|
12
|
-
require 'test/
|
13
|
-
require 'fileutils'
|
14
|
-
require 'flexmock'
|
12
|
+
require 'test/test_setup'
|
15
13
|
|
16
14
|
class TestStubbing < Test::Unit::TestCase
|
17
15
|
include FlexMock::TestCase
|
18
|
-
|
16
|
+
|
19
17
|
class Dog
|
20
18
|
def bark
|
21
19
|
:woof
|
@@ -42,7 +40,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
42
40
|
flexmock(obj).should_receive(:hi).once.and_return(:stub_hi)
|
43
41
|
assert_equal :stub_hi, obj.hi
|
44
42
|
end
|
45
|
-
|
43
|
+
|
46
44
|
def test_stub_command_can_configure_via_block
|
47
45
|
obj = Object.new
|
48
46
|
flexmock(obj) do |m|
|
@@ -50,19 +48,19 @@ class TestStubbing < Test::Unit::TestCase
|
|
50
48
|
end
|
51
49
|
assert_equal :stub_hi, obj.hi
|
52
50
|
end
|
53
|
-
|
51
|
+
|
54
52
|
def test_stubbed_methods_can_take_blocks
|
55
53
|
obj = Object.new
|
56
54
|
flexmock(obj).should_receive(:with_block).once.with(Proc).
|
57
55
|
and_return { |block| block.call }
|
58
56
|
assert_equal :block, obj.with_block { :block }
|
59
57
|
end
|
60
|
-
|
58
|
+
|
61
59
|
def test_multiple_stubs_on_the_same_object_reuse_the_same_partial_mock
|
62
60
|
obj = Object.new
|
63
61
|
assert_equal flexmock(obj), flexmock(obj)
|
64
62
|
end
|
65
|
-
|
63
|
+
|
66
64
|
def test_multiple_methods_can_be_stubbed
|
67
65
|
dog = Dog.new
|
68
66
|
flexmock(dog).should_receive(:bark).and_return(:grrrr)
|
@@ -70,7 +68,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
70
68
|
assert_equal :grrrr, dog.bark
|
71
69
|
assert_equal :happy, dog.wag
|
72
70
|
end
|
73
|
-
|
71
|
+
|
74
72
|
def test_original_behavior_can_be_restored
|
75
73
|
dog = Dog.new
|
76
74
|
partial_mock = flexmock(dog)
|
@@ -80,7 +78,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
80
78
|
assert_equal :woof, dog.bark
|
81
79
|
assert_equal nil, dog.instance_variable_get("@flexmock_proxy")
|
82
80
|
end
|
83
|
-
|
81
|
+
|
84
82
|
def test_original_missing_behavior_can_be_restored
|
85
83
|
obj = Object.new
|
86
84
|
partial_mock = flexmock(obj)
|
@@ -100,7 +98,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
100
98
|
partial_mock.flexmock_teardown
|
101
99
|
assert_raise(NoMethodError) { obj.hi }
|
102
100
|
end
|
103
|
-
|
101
|
+
|
104
102
|
def test_original_behavior_is_restored_when_multiple_methods_are_mocked
|
105
103
|
dog = Dog.new
|
106
104
|
flexmock(dog).should_receive(:bark).and_return(:grrrr)
|
@@ -114,7 +112,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
114
112
|
flexmock(Dog).should_receive(:create).once.and_return(:new_stub)
|
115
113
|
assert_equal :new_stub, Dog.create
|
116
114
|
flexmock(Dog).flexmock_teardown
|
117
|
-
assert_equal :new_dog, Dog.create
|
115
|
+
assert_equal :new_dog, Dog.create
|
118
116
|
end
|
119
117
|
|
120
118
|
def test_original_behavior_is_restored_on_singleton_methods
|
@@ -173,7 +171,11 @@ class TestStubbing < Test::Unit::TestCase
|
|
173
171
|
|
174
172
|
def test_original_behavior_is_restored_even_when_errors
|
175
173
|
flexmock(Dog).should_receive(:create).once.and_return(:mock)
|
176
|
-
|
174
|
+
begin
|
175
|
+
flexmock_teardown
|
176
|
+
rescue assertion_failed_error => _
|
177
|
+
nil
|
178
|
+
end
|
177
179
|
assert_equal :new_dog, Dog.create
|
178
180
|
|
179
181
|
# Now disable the mock so that it doesn't cause errors on normal
|
@@ -185,7 +187,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
185
187
|
def test_not_calling_stubbed_method_is_an_error
|
186
188
|
dog = Dog.new
|
187
189
|
flexmock(dog).should_receive(:bark).once
|
188
|
-
assert_raise(
|
190
|
+
assert_raise(assertion_failed_error) {
|
189
191
|
flexmock(dog).flexmock_verify
|
190
192
|
}
|
191
193
|
dog.bark
|
@@ -195,11 +197,11 @@ class TestStubbing < Test::Unit::TestCase
|
|
195
197
|
obj = Object.new
|
196
198
|
partial_mock = flexmock(obj)
|
197
199
|
partial_mock.should_receive(:hi).once.and_return(:ok)
|
198
|
-
assert_raise(
|
200
|
+
assert_raise(assertion_failed_error) {
|
199
201
|
partial_mock.flexmock_verify
|
200
202
|
}
|
201
203
|
end
|
202
|
-
|
204
|
+
|
203
205
|
def test_stub_can_have_explicit_name
|
204
206
|
obj = Object.new
|
205
207
|
partial_mock = flexmock(obj, "Charlie")
|
@@ -293,7 +295,7 @@ class TestStubbing < Test::Unit::TestCase
|
|
293
295
|
|
294
296
|
def test_safe_partial_mocks_require_block
|
295
297
|
dog = Dog.new
|
296
|
-
|
298
|
+
assert_raise(FlexMock::UsageError) { flexmock(:safe, dog) }
|
297
299
|
end
|
298
300
|
|
299
301
|
def test_safe_partial_mocks_are_actually_mocked
|