diff --git a/src/spectator/mocks/method_stub.cr b/src/spectator/mocks/method_stub.cr index ad1d8d0..492fc3f 100644 --- a/src/spectator/mocks/method_stub.cr +++ b/src/spectator/mocks/method_stub.cr @@ -17,7 +17,7 @@ module Spectator::Mocks abstract def call(args : GenericArguments(T, NT), &original : -> RT) forall T, NT, RT def call!(args : GenericArguments(T, NT), &original : -> RT) : RT forall T, NT, RT - value = call(args, &original) + value = call(args) { |*ya| yield *ya } if value.is_a?(RT) value.as(RT) else diff --git a/src/spectator/mocks/stubs.cr b/src/spectator/mocks/stubs.cr index 54436ef..d18c3ab 100644 --- a/src/spectator/mocks/stubs.cr +++ b/src/spectator/mocks/stubs.cr @@ -84,7 +84,7 @@ module Spectator::Mocks end {% if body && !body.is_a?(Nop) %} - %method({{args.splat}}) { {{original}} { |*%ya| yield *%ya } } + %method({{args.splat}}) { |*%ya| yield *%ya } {% else %} {{original}} do |*%yield_args| yield *%yield_args