flexmock 3.0.0 → 3.0.1
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.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +0 -1
- data/lib/flexmock/core.rb +1 -1
- data/lib/flexmock/expectation.rb +2 -2
- data/lib/flexmock/partial_mock.rb +3 -10
- data/lib/flexmock/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a0f97dabc8c9afa58ef46d4ac17b2e3fa8295f6d20446dc1638291042e41e5d8
|
4
|
+
data.tar.gz: 2bd6a9f043efac740a59f4864da6d668809a30d71ffd97c72efc0c246aaca43f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f06e6198573d73ee08d793ff8f90147a873403a8427e677afdc7301fc06701975f711ebceb51ac5f32c280a29d1c1411a6265095e8bcfa1c362eedd8194a054
|
7
|
+
data.tar.gz: 19325f609dc6e084ce7d0748e0142368d9ca9caf1706733d23287d5001c0f36c9dd25d7194b0a3e5389601628b63aa987a351eb7e6568eb38662a9245cbc8b65
|
data/.github/workflows/test.yml
CHANGED
data/lib/flexmock/core.rb
CHANGED
@@ -206,7 +206,7 @@ class FlexMock
|
|
206
206
|
|
207
207
|
# Invocke the original non-mocked functionality for the given
|
208
208
|
# symbol.
|
209
|
-
def flexmock_invoke_original(method_name, args, kw = {})
|
209
|
+
def flexmock_invoke_original(method_name, args, kw = {}, orig_block = nil)
|
210
210
|
return FlexMock.undefined
|
211
211
|
end
|
212
212
|
|
data/lib/flexmock/expectation.rb
CHANGED
@@ -392,9 +392,9 @@ class FlexMock
|
|
392
392
|
|
393
393
|
def pass_thru(&block)
|
394
394
|
block ||= lambda { |value| value }
|
395
|
-
and_return { |*args, **kw|
|
395
|
+
and_return { |*args, **kw, &orig_block|
|
396
396
|
begin
|
397
|
-
block.call(@mock.flexmock_invoke_original(@sym, args, kw))
|
397
|
+
block.call(@mock.flexmock_invoke_original(@sym, args, kw, orig_block))
|
398
398
|
rescue NoMethodError => e
|
399
399
|
if e.name == @sym
|
400
400
|
raise e, "#{e.message} while performing #pass_thru in expectation object #{self}"
|
@@ -162,10 +162,7 @@ class FlexMock
|
|
162
162
|
#
|
163
163
|
# Usually called in a #and_return statement
|
164
164
|
def invoke_original(m, *args, **kw, &block)
|
165
|
-
|
166
|
-
args << block
|
167
|
-
end
|
168
|
-
flexmock_invoke_original(m, args, kw)
|
165
|
+
flexmock_invoke_original(m, args, kw, block)
|
169
166
|
end
|
170
167
|
|
171
168
|
# Whether the given method's original definition has been stored
|
@@ -336,7 +333,7 @@ class FlexMock
|
|
336
333
|
# (3) Apply any recorded expecations
|
337
334
|
#
|
338
335
|
def create_new_mocked_object(allocate_method, args, kw, recorder, block)
|
339
|
-
new_obj = flexmock_invoke_original(allocate_method, args, kw)
|
336
|
+
new_obj = flexmock_invoke_original(allocate_method, args, kw, nil)
|
340
337
|
mock = flexmock_container.flexmock(new_obj)
|
341
338
|
block.call(mock) unless block.nil?
|
342
339
|
recorder.apply(mock)
|
@@ -346,12 +343,8 @@ class FlexMock
|
|
346
343
|
|
347
344
|
# Invoke the original definition of method on the object supported by
|
348
345
|
# the stub.
|
349
|
-
def flexmock_invoke_original(method, args, kw)
|
346
|
+
def flexmock_invoke_original(method, args, kw, block)
|
350
347
|
if (original_method = find_original_method(method))
|
351
|
-
if Proc === args.last
|
352
|
-
block = args.last
|
353
|
-
args = args[0..-2]
|
354
|
-
end
|
355
348
|
original_method.call(*args, **kw, &block)
|
356
349
|
else
|
357
350
|
@obj.__send__(:method_missing, method, *args, **kw, &block)
|
data/lib/flexmock/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flexmock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jim Weirich
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2024-
|
12
|
+
date: 2024-09-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: minitest
|