muack 1.1.1 → 1.1.2

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.
@@ -8,44 +8,44 @@ describe Muack::Mock do
8
8
  Muack::EnsureReset.call
9
9
  end
10
10
 
11
- should 'proxy with regular method' do
11
+ would 'proxy with regular method' do
12
12
  mock(Str).reverse
13
13
  Str.reverse.should.eq 'ooM'
14
14
  end
15
15
 
16
- should 'proxy with private method' do
16
+ would 'proxy with private method' do
17
17
  mock(Obj).private.peek_return(&:reverse)
18
18
  Obj.__send__(:private).should.eq 'irp'
19
19
  end
20
20
 
21
- should 'proxy multiple times' do
21
+ would 'proxy multiple times' do
22
22
  2.times{ mock(Str).reverse }
23
23
  2.times{ Str.reverse.should.eq 'ooM' }
24
24
  end
25
25
 
26
- should 'proxy multiple times with super method' do
26
+ would 'proxy multiple times with super method' do
27
27
  2.times{ mock(Str).class }
28
28
  2.times{ Str.class.should.eq String }
29
29
  end
30
30
 
31
- should 'proxy with super method for multiple arguments' do
31
+ would 'proxy with super method for multiple arguments' do
32
32
  args = %w[o u]
33
33
  mock(Str).tr(*args)
34
34
  Str.tr(*args).should.eq 'Muu'
35
35
  end
36
36
 
37
- should 'return modifier itself for any modifier methods' do
37
+ would 'return modifier itself for any modifier methods' do
38
38
  mock(Str).to_s.peek_return{ |s| s.reverse }.times(2).
39
39
  with_any_args.with_any_args
40
40
  2.times{ Str.to_s.should.eq 'ooM' }
41
41
  end
42
42
 
43
- should 'proxy and call the original method' do
43
+ would 'proxy and call the original method' do
44
44
  mock(Obj).method_missing(:inspect).peek_return{ |str| str.reverse }
45
45
  Obj.inspect.should.eq 'jbo'
46
46
  end
47
47
 
48
- should 'proxy and call the original method for multiple arguments' do
48
+ would 'proxy and call the original method for multiple arguments' do
49
49
  args = %w[o u]
50
50
  mock(Obj).aloha(*args)
51
51
  mock(Obj).aloha
@@ -53,31 +53,31 @@ describe Muack::Mock do
53
53
  Obj.aloha.should.eq [0, 1]
54
54
  end
55
55
 
56
- should 'proxy and call the block with super' do
56
+ would 'proxy and call the block with super' do
57
57
  mock(Str).class.peek_return{ |k| k.name.reverse }
58
58
  Str.class.should.eq 'gnirtS'
59
59
  end
60
60
 
61
- should 'mock proxy and call, mock proxy and call' do
61
+ would 'mock proxy and call, mock proxy and call' do
62
62
  mock(Obj).class.peek_return{ |k| k.name.reverse }
63
63
  Obj.class.should.eq 'tcejbO'
64
64
  mock(Obj).class.peek_return{ |k| k.name.upcase }
65
65
  Obj.class.should.eq 'OBJECT'
66
66
  end
67
67
 
68
- should 'stub proxy and call, stub proxy and call' do
68
+ would 'stub proxy and call, stub proxy and call' do
69
69
  stub(Obj).kind_of?(Object).peek_return{ |b| !b }
70
70
  Obj.kind_of?(Object).should.eq false
71
71
  stub(Obj).kind_of?(String).peek_return{ |b| b.to_s }
72
72
  Obj.kind_of?(String).should.eq 'false'
73
73
  end
74
74
 
75
- should 'stub proxy with any times' do
75
+ would 'stub proxy with any times' do
76
76
  stub(Obj).class.peek_return{ |k| k.name.downcase }
77
77
  3.times{ Obj.class.should.eq 'object' }
78
78
  end
79
79
 
80
- should 'stub proxy and spy' do
80
+ would 'stub proxy and spy' do
81
81
  stub(Obj).class.peek_return{ |k| k.name.downcase }
82
82
  Obj.class.should.eq 'object'
83
83
  spy(Obj).class
@@ -90,19 +90,15 @@ describe Muack::Mock do
90
90
  Muack::EnsureReset.call
91
91
  end
92
92
 
93
- should 'raise Expected error if passing unexpected argument' do
93
+ would 'raise Expected error if passing unexpected argument' do
94
94
  mock(Str).reverse
95
95
  Str.reverse.should.eq 'ooM'
96
- begin
97
- Str.reverse
98
- 'never'.should.eq 'reach'
99
- rescue Muack::Expected => e
100
- e.expected .should.eq '"Moo".reverse()'
101
- e.expected_times.should.eq 1
102
- e.actual_times .should.eq 2
103
- e.message .should.eq "\nExpected: \"Moo\".reverse()\n " \
104
- "called 1 times\n but was 2 times."
105
- end
96
+ e = should.raise(Muack::Expected){ Str.reverse }
97
+ e.expected .should.eq '"Moo".reverse()'
98
+ e.expected_times.should.eq 1
99
+ e.actual_times .should.eq 2
100
+ e.message .should.eq "\nExpected: \"Moo\".reverse()\n " \
101
+ "called 1 times\n but was 2 times."
106
102
  end
107
103
  end
108
104
  end
@@ -2,46 +2,43 @@
2
2
  require 'muack/test'
3
3
 
4
4
  describe Muack::Satisfy do
5
+ after do
6
+ Muack.reset
7
+ Muack::EnsureReset.call
8
+ end
9
+
5
10
  describe Muack::IsA do
6
- should 'have human readable to_s and inspect' do
11
+ would 'have human readable to_s and inspect' do
7
12
  matcher = is_a(String)
8
13
  expected = 'Muack::API.is_a(String)'
9
14
  matcher.to_s .should.eq expected
10
15
  matcher.inspect.should.eq expected
11
16
  end
12
17
 
13
- should 'satisfy' do
18
+ would 'satisfy' do
14
19
  mock(Str).say(is_a(String)){ |arg| arg.reverse }
15
20
  Str.say('Foo').should.eq 'ooF'
16
21
  Muack.verify.should.eq true
17
- Muack::EnsureReset.call
18
22
  end
19
23
 
20
- should 'raise Unexpected error if passing unexpected argument' do
24
+ would 'raise Unexpected error if passing unexpected argument' do
21
25
  mock(Obj).say(is_a(Array)){ 'boo' }
22
- begin
23
- Obj.say(false)
24
- 'never'.should.eq 'reach'
25
- rescue Muack::Unexpected => e
26
- e.expected.should.eq 'obj.say(Muack::API.is_a(Array))'
27
- e.was .should.eq 'obj.say(false)'
28
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
29
- ensure
30
- Muack.reset
31
- Muack::EnsureReset.call
32
- end
26
+ e = should.raise(Muack::Unexpected){ Obj.say(false) }
27
+ e.expected.should.eq 'obj.say(Muack::API.is_a(Array))'
28
+ e.was .should.eq 'obj.say(false)'
29
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
33
30
  end
34
31
  end
35
32
 
36
33
  describe Muack::Anything do
37
- should 'have human readable to_s and inspect' do
34
+ would 'have human readable to_s and inspect' do
38
35
  matcher = anything
39
36
  expected = 'Muack::API.anything()'
40
37
  matcher.to_s .should.eq expected
41
38
  matcher.inspect.should.eq expected
42
39
  end
43
40
 
44
- should 'satisfy' do
41
+ would 'satisfy' do
45
42
  mock(Str).say(anything){ |arg| arg*2 }
46
43
  Str.say(5).should.eq 10
47
44
  Muack.verify.should.eq true
@@ -50,191 +47,142 @@ describe Muack::Satisfy do
50
47
  Str.say('b').should.eq 'B'
51
48
 
52
49
  Muack.verify.should.eq true
53
- Muack::EnsureReset.call
54
50
  end
55
51
 
56
- should 'raise Unexpected error if passing unexpected argument' do
52
+ would 'raise Unexpected error if passing unexpected argument' do
57
53
  mock(Obj).say(anything){ 'boo' }
58
- begin
59
- Obj.say(6, 7)
60
- 'never'.should.eq 'reach'
61
- rescue Muack::Unexpected => e
62
- e.expected.should.eq 'obj.say(Muack::API.anything())'
63
- e.was .should.eq 'obj.say(6, 7)'
64
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
65
- ensure
66
- Muack.reset
67
- Muack::EnsureReset.call
68
- end
54
+ e = should.raise(Muack::Unexpected){ Obj.say(6, 7) }
55
+ e.expected.should.eq 'obj.say(Muack::API.anything())'
56
+ e.was .should.eq 'obj.say(6, 7)'
57
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
69
58
  end
70
59
  end
71
60
 
72
61
  describe Muack::Match do
73
- should 'have human readable to_s and inspect' do
62
+ would 'have human readable to_s and inspect' do
74
63
  matcher = match(/\w/)
75
64
  expected = 'Muack::API.match(/\w/)'
76
65
  matcher.to_s .should.eq expected
77
66
  matcher.inspect.should.eq expected
78
67
  end
79
68
 
80
- should 'satisfy' do
69
+ would 'satisfy' do
81
70
  mock(Str).say(match(/\w/)){ |arg| arg }
82
71
  Str.say('aa').should.eq 'aa'
83
72
  Muack.verify.should.eq true
84
- Muack::EnsureReset.call
85
73
  end
86
74
 
87
- should 'raise Unexpected error if passing unexpected argument' do
75
+ would 'raise Unexpected error if passing unexpected argument' do
88
76
  mock(Obj).say(match(/\w/)){ 'boo' }
89
- begin
90
- Obj.say('!')
91
- 'never'.should.eq 'reach'
92
- rescue Muack::Unexpected => e
93
- e.expected.should.eq 'obj.say(Muack::API.match(/\w/))'
94
- e.was .should.eq 'obj.say("!")'
95
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
96
- ensure
97
- Muack.reset
98
- Muack::EnsureReset.call
99
- end
77
+ e = should.raise(Muack::Unexpected){ Obj.say('!') }
78
+ e.expected.should.eq 'obj.say(Muack::API.match(/\w/))'
79
+ e.was .should.eq 'obj.say("!")'
80
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
100
81
  end
101
82
  end
102
83
 
103
84
  describe Muack::HashIncluding do
104
- should 'have human readable to_s and inspect' do
85
+ would 'have human readable to_s and inspect' do
105
86
  matcher = hash_including(:b => 2)
106
87
  expected = 'Muack::API.hash_including({:b=>2})'
107
88
  matcher.to_s .should.eq expected
108
89
  matcher.inspect.should.eq expected
109
90
  end
110
91
 
111
- should 'satisfy' do
92
+ would 'satisfy' do
112
93
  mock(Str).say(hash_including(:b => 2)){ |arg| arg[:a] }
113
94
  Str.say(:a => 1, :b => 2).should.eq 1
114
95
  Muack.verify.should.eq true
115
- Muack::EnsureReset.call
116
96
  end
117
97
 
118
- should 'satisfy with satisfy' do
98
+ would 'satisfy with satisfy' do
119
99
  mock(Str).say(hash_including(:b => is_a(Fixnum))){ |arg| arg[:b] }
120
100
  Str.say(:a => 1, :b => 2).should.eq 2
121
101
  Muack.verify.should.eq true
122
- Muack::EnsureReset.call
123
102
  end
124
103
 
125
- should 'raise Unexpected error if passing unexpected argument' do
104
+ would 'raise Unexpected error if passing unexpected argument' do
126
105
  mock(Obj).say(hash_including(:b => 2)){ 'boo' }
127
- begin
128
- Obj.say(:a => 1)
129
- 'never'.should.eq 'reach'
130
- rescue Muack::Unexpected => e
131
- e.expected.should.eq 'obj.say(Muack::API.hash_including({:b=>2}))'
132
- e.was .should.eq 'obj.say({:a=>1})'
133
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
134
- ensure
135
- Muack.reset
136
- Muack::EnsureReset.call
137
- end
138
- end
139
-
140
- should 'raise Unexpected error if passing unsatisfied argument' do
106
+ e = should.raise(Muack::Unexpected){ Obj.say(:a => 1) }
107
+ e.expected.should.eq 'obj.say(Muack::API.hash_including({:b=>2}))'
108
+ e.was .should.eq 'obj.say({:a=>1})'
109
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
110
+ end
111
+
112
+ would 'raise Unexpected error if passing unsatisfied argument' do
141
113
  mock(Obj).say(hash_including(:b => is_a(String))){ 'boo' }
142
- begin
143
- Obj.say(:b => 1)
144
- 'never'.should.eq 'reach'
145
- rescue Muack::Unexpected => e
146
- e.expected.should.eq \
147
- 'obj.say(Muack::API.hash_including({:b=>Muack::API.is_a(String)}))'
148
- e.was .should.eq 'obj.say({:b=>1})'
149
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
150
- ensure
151
- Muack.reset
152
- Muack::EnsureReset.call
153
- end
114
+ e = should.raise(Muack::Unexpected){ Obj.say(:b => 1) }
115
+ e.expected.should.eq \
116
+ 'obj.say(Muack::API.hash_including({:b=>Muack::API.is_a(String)}))'
117
+ e.was .should.eq 'obj.say({:b=>1})'
118
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
154
119
  end
155
120
  end
156
121
 
157
122
  describe Muack::Including do
158
- should 'have human readable to_s and inspect' do
123
+ would 'have human readable to_s and inspect' do
159
124
  matcher = including(2)
160
125
  expected = 'Muack::API.including(2)'
161
126
  matcher.to_s .should.eq expected
162
127
  matcher.inspect.should.eq expected
163
128
  end
164
129
 
165
- should 'satisfy' do
130
+ would 'satisfy' do
166
131
  mock(Str).say(including(2)){ |arg| arg.first }
167
132
  Str.say([1, 2]).should.eq 1
168
133
  Muack.verify.should.eq true
169
- Muack::EnsureReset.call
170
134
  end
171
135
 
172
- should 'raise Unexpected error if passing unexpected argument' do
136
+ would 'raise Unexpected error if passing unexpected argument' do
173
137
  mock(Obj).say(including(2)){ 'boo' }
174
- begin
175
- Obj.say([1])
176
- 'never'.should.eq 'reach'
177
- rescue Muack::Unexpected => e
178
- e.expected.should.eq 'obj.say(Muack::API.including(2))'
179
- e.was .should.eq 'obj.say([1])'
180
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
181
- ensure
182
- Muack.reset
183
- Muack::EnsureReset.call
184
- end
138
+ e = should.raise(Muack::Unexpected){ Obj.say([1]) }
139
+ e.expected.should.eq 'obj.say(Muack::API.including(2))'
140
+ e.was .should.eq 'obj.say([1])'
141
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
185
142
  end
186
143
  end
187
144
 
188
145
  describe Muack::Within do
189
- should 'have human readable to_s and inspect' do
146
+ would 'have human readable to_s and inspect' do
190
147
  matcher = within(0..9)
191
148
  expected = 'Muack::API.within(0..9)'
192
149
  matcher.to_s .should.eq expected
193
150
  matcher.inspect.should.eq expected
194
151
  end
195
152
 
196
- should 'satisfy' do
153
+ would 'satisfy' do
197
154
  mock(Str).say(within(0..9)){ |arg| arg*2 }
198
155
  Str.say(5).should.eq 10
199
156
  Muack.verify.should.eq true
200
157
 
201
158
  mock(Str).say(within(%[a b])){ |arg| arg.upcase }
202
159
  Str.say('b').should.eq 'B'
203
-
204
160
  Muack.verify.should.eq true
205
- Muack::EnsureReset.call
206
161
  end
207
162
 
208
- should 'raise Unexpected error if passing unexpected argument' do
163
+ would 'raise Unexpected error if passing unexpected argument' do
209
164
  mock(Obj).say(within(0..5)){ 'boo' }
210
- begin
211
- Obj.say(6)
212
- 'never'.should.eq 'reach'
213
- rescue Muack::Unexpected => e
214
- e.expected.should.eq 'obj.say(Muack::API.within(0..5))'
215
- e.was .should.eq 'obj.say(6)'
216
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
217
- ensure
218
- Muack.reset
219
- Muack::EnsureReset.call
220
- end
165
+ e = should.raise(Muack::Unexpected){ Obj.say(6) }
166
+ e.expected.should.eq 'obj.say(Muack::API.within(0..5))'
167
+ e.was .should.eq 'obj.say(6)'
168
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
221
169
  end
222
170
  end
223
171
 
224
172
  describe Muack::RespondTo do
225
- should 'have human readable to_s and inspect' do
173
+ would 'have human readable to_s and inspect' do
226
174
  matcher = respond_to(:id)
227
175
  expected = 'Muack::API.respond_to(:id)'
228
- matcher.to_s .should.start_with expected
229
- matcher.inspect.should.start_with expected
176
+ matcher.to_s .should.start_with? expected
177
+ matcher.inspect.should.start_with? expected
230
178
 
231
179
  matcher = respond_to(:id, :reload)
232
180
  expected = 'Muack::API.respond_to(:id, :reload)'
233
- matcher.to_s .should.start_with expected
234
- matcher.inspect.should.start_with expected
181
+ matcher.to_s .should.start_with? expected
182
+ matcher.inspect.should.start_with? expected
235
183
  end
236
184
 
237
- should 'satisfy' do
185
+ would 'satisfy' do
238
186
  mock(Str).say(respond_to(:verify, :reset)){ |arg| arg.name }
239
187
  Str.say(Muack).should.eq 'Muack'
240
188
  Muack.verify.should.eq true
@@ -242,125 +190,95 @@ describe Muack::Satisfy do
242
190
  mock(Str).say(respond_to(:verify )){ |arg| arg.name }
243
191
  Str.say(Muack).should.eq 'Muack'
244
192
  Muack.verify.should.eq true
245
-
246
- Muack::EnsureReset.call
247
193
  end
248
194
 
249
- should 'raise Unexpected error if passing unexpected argument' do
195
+ would 'raise Unexpected error if passing unexpected argument' do
250
196
  mock(Obj).say(respond_to(:nothing)){ 'boo' }
251
- begin
252
- Obj.say(0)
253
- 'never'.should.eq 'reach'
254
- rescue Muack::Unexpected => e
255
- e.expected.should.eq 'obj.say(Muack::API.respond_to(:nothing))'
256
- e.was .should.eq 'obj.say(0)'
257
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
258
- ensure
259
- Muack.reset
260
- Muack::EnsureReset.call
261
- end
197
+ e = should.raise(Muack::Unexpected){ Obj.say(0) }
198
+ e.expected.should.eq 'obj.say(Muack::API.respond_to(:nothing))'
199
+ e.was .should.eq 'obj.say(0)'
200
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
262
201
  end
263
202
  end
264
203
 
265
204
  describe Muack::Satisfy do
266
- should 'have human readable to_s and inspect' do
205
+ would 'have human readable to_s and inspect' do
267
206
  matcher = satisfy{ |arg| arg % 2 == 0 }
268
207
  expected = 'Muack::API.satisfy(#<Proc:'
269
- matcher.to_s .should.start_with expected
270
- matcher.inspect.should.start_with expected
208
+ matcher.to_s .should.start_with? expected
209
+ matcher.inspect.should.start_with? expected
271
210
  end
272
211
 
273
- should 'not crash for top-level subclass' do
212
+ would 'not crash for top-level subclass' do
274
213
  Class.new(Muack::Satisfy){ def self.name; 'TopLevel'; end }.new.
275
214
  api_name.should.eq 'top_level'
276
215
  end
277
216
 
278
- should 'satisfy' do
217
+ would 'satisfy' do
279
218
  mock(Str).say(satisfy{ |arg| arg % 2 == 0 }){ |arg| arg + 1 }
280
219
  Str.say(14).should.eq 15
281
220
  Muack.verify.should.eq true
282
221
  Muack::EnsureReset.call
283
222
  end
284
223
 
285
- should 'raise Unexpected error if passing unexpected argument' do
224
+ would 'raise Unexpected error if passing unexpected argument' do
286
225
  mock(Obj).say(satisfy{ |arg| arg % 2 == 0 }){ 'boo' }
287
- begin
288
- Obj.say(1)
289
- 'never'.should.eq 'reach'
290
- rescue Muack::Unexpected => e
291
- e.expected.should.start_with 'obj.say(Muack::API.satisfy(#<Proc:'
292
- e.was .should.eq 'obj.say(1)'
293
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
294
- ensure
295
- Muack.reset
296
- Muack::EnsureReset.call
297
- end
226
+ e = should.raise(Muack::Unexpected){ Obj.say(1) }
227
+ e.expected.should.start_with? 'obj.say(Muack::API.satisfy(#<Proc:'
228
+ e.was .should.eq 'obj.say(1)'
229
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
298
230
  end
299
231
  end
300
232
 
301
233
  describe Muack::Satisfy::Disj do
302
- should 'have human readable to_s and inspect' do
234
+ would 'have human readable to_s and inspect' do
303
235
  matcher = is_a(TrueClass) | is_a(FalseClass)
304
236
  expected = 'Muack::API.is_a(TrueClass) | Muack::API.is_a(FalseClass)'
305
- matcher.to_s .should.start_with expected
306
- matcher.inspect.should.start_with expected
237
+ matcher.to_s .should.start_with? expected
238
+ matcher.inspect.should.start_with? expected
307
239
  end
308
240
 
309
- should 'satisfy' do
241
+ would 'satisfy' do
310
242
  mock(Str).say(is_a(TrueClass) | is_a(FalseClass)){ |arg| !arg }
311
243
  Str.say(false).should.eq true
312
244
  Muack.verify .should.eq true
313
245
  Muack::EnsureReset.call
314
246
  end
315
247
 
316
- should 'raise Unexpected error if passing unexpected argument' do
248
+ would 'raise Unexpected error if passing unexpected argument' do
317
249
  mock(Obj).say(within('0'..'1') | match(/a/)){ 'boo' }
318
- begin
319
- Obj.say('2')
320
- 'never'.should.eq 'reach'
321
- rescue Muack::Unexpected => e
322
- e.expected.should.eq \
323
- 'obj.say(Muack::API.within("0".."1") | Muack::API.match(/a/))'
324
- e.was .should.eq \
325
- 'obj.say("2")'
326
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
327
- ensure
328
- Muack.reset
329
- Muack::EnsureReset.call
330
- end
250
+ e = should.raise(Muack::Unexpected){ Obj.say('2') }
251
+ e.expected.should.eq \
252
+ 'obj.say(Muack::API.within("0".."1") | Muack::API.match(/a/))'
253
+ e.was .should.eq \
254
+ 'obj.say("2")'
255
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
331
256
  end
332
257
  end
333
258
 
334
259
  describe Muack::Satisfy::Conj do
335
- should 'have human readable to_s and inspect' do
260
+ would 'have human readable to_s and inspect' do
336
261
  matcher = respond_to(:ancestors) & is_a(Class)
337
262
  expected = 'Muack::API.respond_to(:ancestors) & Muack::API.is_a(Class)'
338
263
  matcher.to_s .should.eq expected
339
264
  matcher.inspect.should.eq expected
340
265
  end
341
266
 
342
- should 'satisfy' do
267
+ would 'satisfy' do
343
268
  mock(Str).say(respond_to(:ancestors) & is_a(Class)){ |arg| arg.new }
344
269
  Str.say(String).should.eq ''
345
270
  Muack.verify .should.eq true
346
271
  Muack::EnsureReset.call
347
272
  end
348
273
 
349
- should 'raise Unexpected error if passing unexpected argument' do
274
+ would 'raise Unexpected error if passing unexpected argument' do
350
275
  mock(Obj).say(anything & within(0..1)){ 'boo' }
351
- begin
352
- Obj.say(2)
353
- 'never'.should.eq 'reach'
354
- rescue Muack::Unexpected => e
355
- e.expected.should.eq \
356
- 'obj.say(Muack::API.anything() & Muack::API.within(0..1))'
357
- e.was .should.eq \
358
- 'obj.say(2)'
359
- e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
360
- ensure
361
- Muack.reset
362
- Muack::EnsureReset.call
363
- end
276
+ e = should.raise(Muack::Unexpected){ Obj.say(2) }
277
+ e.expected.should.eq \
278
+ 'obj.say(Muack::API.anything() & Muack::API.within(0..1))'
279
+ e.was .should.eq \
280
+ 'obj.say(2)'
281
+ e.message .should.eq "\nExpected: #{e.expected}\n but was: #{e.was}"
364
282
  end
365
283
  end
366
284
  end