Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suppress a warning by setting $VERBOSE to nil #1414

Merged
merged 1 commit into from
Feb 19, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 2 additions & 10 deletions lib/rspec/mocks/verifying_double.rb
Original file line number Diff line number Diff line change
Expand Up @@ -34,23 +34,15 @@ def method_missing(message, *args, &block)
super
end

# @private
module SilentIO
def self.method_missing(*); end
def self.respond_to?(*)
true
end
end

# Redefining `__send__` causes ruby to issue a warning.
old, $stderr = $stderr, SilentIO
old, $VERBOSE = $VERBOSE, nil
def __send__(name, *args, &block)
@__sending_message = name
super
ensure
@__sending_message = nil
end
$stderr = old
$VERBOSE = old

def send(name, *args, &block)
__send__(name, *args, &block)
Expand Down