diff --git a/lib/minitest.rb b/lib/minitest.rb index 14b5680a..136a581d 100644 --- a/lib/minitest.rb +++ b/lib/minitest.rb @@ -923,7 +923,7 @@ def backtrace # :nodoc: def message # :nodoc: bt = Minitest.filter_backtrace(self.backtrace) - bt = Minitest.filter_backtrace(self.cause.cause.backtrace) + bt if self.cause.cause + bt = Minitest.filter_backtrace(self.cause.cause.backtrace) + bt if self.cause && self.cause.cause "#{self.error.class}: #{self.error.message}#{bt.map{ |s| "\n #{s}" }.join}" end diff --git a/lib/minitest/mock.rb b/lib/minitest/mock.rb index 39cfc24e..62594b22 100644 --- a/lib/minitest/mock.rb +++ b/lib/minitest/mock.rb @@ -222,9 +222,9 @@ def stub name, val_or_callable, *block_args metaclass.send :alias_method, new_name, name - metaclass.send :define_method, name do |*args, &blk| + metaclass.send :define_method, name do |*args, **kwargs, &blk| if val_or_callable.respond_to? :call then - val_or_callable.call(*args, &blk) + val_or_callable.call(*args, **kwargs, &blk) else blk.call(*block_args) if blk val_or_callable